Three games.
One daily habit.
Maze
Navigate to the exit before the timer runs out. Mazes grow larger and more complex as you level up.
Memory
Flip and match card pairs as fast as possible. More cards, shorter previews at higher levels.
Word
Remember a sequence of words, then type them back correctly. Sequences get longer with each level.
Built around
daily life.
Reminders
Set medication and appointment reminders. Never miss something important.
Agenda
A personal agenda integrated directly in the app for daily structure.
Streaks & goals
Set a daily exercise target and track login streaks to build a routine.
Social challenges
Challenge friends to daily games. A leaderboard keeps things competitive.
Pearl shop
Earn pearls from exercises and spend them on cosmetic items in the shop.
Auth & profiles
Supabase auth, multilingual UI, dark mode, and personalised preferences.
Architecture
Frontend
- Framework
- React + TypeScript
- Build
- Vite + Rollup
- State
- Zustand (reduces DB calls)
- Routing
- createBrowserRouter, protected routes
- Code splitting
- React.lazy + Suspense
Backend & infra
- Auth + DB
- Supabase (Postgres + Realtime)
- Edge functions
- Supabase Edge Functions
- Push
- Firebase Cloud Messaging
- Hosting
- Firebase Hosting
- CI/CD
- GitHub Actions
Lighthouse-driven
optimization.
Lazy loading
React.lazy + Suspense splits the bundle. Images load only when in viewport.
Smart caching
Zustand store avoids repeat DB reads. Cursor-based pagination for chat history.
Asset optimisation
Images converted to WebP/AVIF, resized to actual display size, long-lived hashed cache headers.
Result
Lighthouse performance score increased significantly after iterative optimisations — both mobile and desktop.
perf score
