Кейс

NoteSync

Робочий застосунок на React Native для iOS і Android. Синхронізація між пристроями в реальному часі, офлайн-first збереження, біометрична автентифікація та push-сповіщення через REST API на Laravel.

NoteSync — Мобільний застосунок

Коротко

Рік
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 годин із безкоштовною оцінкою та пропозицією стеку.