BrightLearn — Mobile Learning App
Cross-platform app with offline lessons, adaptive quizzes and an AI tutor — 4.8★ across iOS and Android.
- Timeline
- 5 months to store launch
- Team
- 2 mobile · 1 backend · 1 designer · 1 QA
- Platforms
- iOS + Android, one codebase
- Rating
- 4.8★ across both stores
BrightLearn came to us with a curriculum, a founder with strong opinions about teaching, and no app. The hard requirement was that it had to work for students who are not online most of the day.
- Sector
- Education technology
- Region
- Asia-Pacific
- Engagement
- Idea to launch, both app stores
The target students share devices and have intermittent, metered connectivity. An app that assumes a live connection is not a slightly worse experience for them — it is unusable. Offline could not be a fallback mode bolted on later; it had to be the default assumption in the data model.
Two more things pulled in opposite directions. The founder wanted adaptive difficulty, which implies a server that knows how every student is doing. And they wanted an AI tutor that answers questions in the student's own words, which implies an LLM call. Neither works offline.
On top of that: a small budget, one codebase for two stores, and a launch date tied to the start of a school term. There was no room for a rewrite halfway through.
How the work was actually sequenced
Offline-first data model, decided in week one
Lessons, quizzes and progress live in a local database and sync when a connection appears. Every write is queued locally with a client-generated id, so a student can finish a whole week of lessons on a train and nothing is lost. Conflict resolution is last-write-wins per field, which is enough when each student owns their own progress.
Adaptive difficulty computed on-device, reconciled on sync
The difficulty model is small enough to run locally, so quizzes adapt immediately with no round trip. The server recomputes on sync with the full history and can nudge the local model, but it is never in the critical path of answering a question.
An AI tutor grounded in the actual curriculum
Rather than letting a general model improvise, tutor answers are retrieved from the lesson content the student is working through, then phrased conversationally. Responses are cached per lesson, so common questions are answerable offline after the first time. Out-of-scope questions get an honest 'that's not in this lesson' instead of a confident guess.
One codebase, but native where it mattered
React Native for effectively all of the UI, with native modules only for background download scheduling, where the platforms genuinely differ. Weekly TestFlight and internal-track builds from the first month, so the founder was using the real app long before launch.
We came with a vague idea and left with a polished mobile app on both stores. Weekly demos meant zero surprises. We'd hire them again in a heartbeat.
Mobile
- React Native
- Expo
- TypeScript
- SQLite
- MMKV
Backend
- Node.js
- Fastify
- PostgreSQL
- Redis
AI
- OpenAI API
- Retrieval over lesson content
- Response caching
ShopGrid — Headless Commerce
Web · E-commerce
Got something like this in mind?
Tell us what you're building. We'll come back within one business day with a clear plan and an honest estimate.