- Rok
- Zakres
- Moja rola
NoteSync
Produkcyjna aplikacja React Native na iOS i Android. Synchronizacja real-time między urządzeniami, trwałość offline-first, uwierzytelnianie biometryczne i powiadomienia push przez Laravel REST API.
W skrócie
- Rok
- 2024
- Zakres
- Aplikacja mobilna iOS i Android, API, wdrożenie w sklepach
- Moja rola
- Projekt, backend, aplikacja mobilna, wdrożenie
- Technologie
- React NativeExpoLaravel APIRedisMySQLRabbitMQDockerCI/CD
Case study
01Wyzwanie
Notatki muszą być edytowalne bez zasięgu — w metrze, w samolocie, na budowie — a po powrocie połączenia zmiany z telefonu i tabletu mają się zejść w jedną wersję bez gubienia treści. Naiwne „ostatni zapis wygrywa” kasuje pracę użytkownika, a to w aplikacji do notatek jest błędem, którego się nie wybacza.
02Rozwiązanie
- Lokalna baza na urządzeniu jest źródłem prawdy — interfejs nigdy nie czeka na sieć, zapis jest natychmiastowy niezależnie od zasięgu.
- Zmiany trafiają do kolejki i są wysyłane przez RabbitMQ, gdy połączenie wróci; kolejka przeżywa restart aplikacji.
- Scalanie na poziomie pola, nie całej notatki — równoległa edycja dwóch różnych akapitów nie powoduje konfliktu.
- Odblokowanie biometryczne i powiadomienia push obsługiwane przez wspólne API w Laravelu dla obu platform.
03Efekt
- Pełna praca offline: aplikacja jest użyteczna przy zerowym zasięgu, a synchronizacja dogania się sama.
- Jedna baza kodu obsługuje App Store i Google Play — poprawka wychodzi raz, nie dwa razy.
- Wdrożenia idą przez CI/CD w Dockerze, więc wydanie nowej wersji nie wymaga ręcznych kroków.
04Dlaczego taki stack
React Native z Expo, bo dwie natywne bazy kodu przy tym budżecie oznaczałyby połowę funkcji na każdej platformie. Laravel po stronie API, bo kolejki, uwierzytelnianie i powiadomienia są tam gotowe i sprawdzone.
Masz projekt na oku?
Opisz go w kilku zdaniach — odpiszę w ciągu 24 godzin z bezpłatną wyceną i propozycją stacku.