- Year
- Scope
- My role
NoteSync
A production React Native app for iOS and Android. Real-time cross-device sync, offline-first persistence, biometric authentication and push notifications via a Laravel REST API.
At a glance
- Year
- 2024
- Scope
- iOS and Android app, API, store releases
- My role
- Design, backend, mobile app, release
- Stack
- React NativeExpoLaravel APIRedisMySQLRabbitMQDockerCI/CD
Case study
01The problem
Notes have to be editable with no signal — on the underground, on a plane, on site — and once the connection returns, edits from a phone and a tablet must converge into one version without losing text. Naive "last write wins" quietly destroys the user's work, and in a notes app that is the one mistake you do not get forgiven for.
02What I built
- A local on-device database is the source of truth — the interface never waits for the network and a save lands instantly regardless of signal.
- Changes go into a queue and ship over RabbitMQ once the connection returns; the queue survives an app restart.
- Merging happens per field rather than per note, so editing two different paragraphs in parallel never raises a conflict.
- Biometric unlock and push notifications are served by one shared Laravel API across both platforms.
03What it does now
- Genuine offline use: the app stays usable at zero signal and the sync catches up by itself.
- One codebase serves the App Store and Google Play — a fix ships once, not twice.
- Releases run through Dockerised CI/CD, so cutting a new version takes no manual steps.
04Why this stack
React Native with Expo, because two native codebases on this budget would have meant half the features on each platform. Laravel on the API side, because queues, authentication and notifications are already there and battle-tested.
Got a project in mind?
Describe it in a few sentences — I reply within 24 hours with a free quote and a proposed stack.