- Рік
- Обсяг
- Моя роль
NoteSync
Робочий застосунок на React Native для iOS і Android. Синхронізація між пристроями в реальному часі, офлайн-first збереження, біометрична автентифікація та push-сповіщення через REST API на Laravel.
Коротко
- Рік
- 2024
- Обсяг
- Застосунок для iOS і Android, API, публікація в маркетах
- Моя роль
- Проєктування, бекенд, мобільний застосунок, реліз
- Технології
- React NativeExpoLaravel APIRedisMySQLRabbitMQDockerCI/CD
Кейс
01Проблема
Нотатки мають лишатися редагованими без звʼязку — у метро, у літаку, на будівництві — а щойно зʼєднання повертається, правки з телефона й планшета мусять зійтися в одну версію без утрати тексту. Наївне «перемагає той, хто записав останнім» тихо знищує роботу користувача, а в застосунку для нотаток це та єдина помилка, якої не пробачають.
02Що я зробив
- Локальна база на пристрої є джерелом істини: інтерфейс ніколи не чекає на мережу, збереження миттєве незалежно від звʼязку.
- Зміни потрапляють у чергу й вирушають через RabbitMQ, щойно зʼєднання відновиться; черга переживає перезапуск застосунку.
- Обʼєднання відбувається на рівні поля, а не цілої нотатки, тож паралельне редагування двох різних абзаців не створює конфлікту.
- Біометричне розблокування та push-сповіщення обслуговує один спільний API на Laravel для обох платформ.
03Що це дає зараз
- Справжня офлайн-робота: застосунок лишається придатним без звʼязку, а синхронізація наздоганяє сама.
- Один код обслуговує App Store і Google Play — виправлення випускається один раз, а не двічі.
- Релізи йдуть через CI/CD у Docker, тож випуск нової версії не потребує ручних кроків.
04Чому саме такий стек
React Native з Expo, бо дві нативні бази коду за цього бюджету означали б половину функцій на кожній платформі. Laravel на боці API, бо черги, автентифікація та сповіщення там уже є і перевірені.
Маєте проєкт на думці?
Опишіть його кількома реченнями — відповім протягом 24 годин із безкоштовною оцінкою та пропозицією стеку.