← back to selected work

selected work · 2026

CommitD

Five productivity trackers · one auth layer · three platforms · one codebase.

summary

  • Combines weekly planning, habits, tasks, finance, and overview tracking behind one authenticated dashboard.
  • Uses a Next.js monorepo so the landing site, dashboard, shared types, and mobile shell evolve together.
  • Connects Firebase Auth, Firestore sync, Razorpay trial gating, and Capacitor mobile packaging.
  • Keeps productivity features simple by centralizing the hard platform work once instead of five times.

problem

  • A paid productivity workspace needs auth, billing, sync, mobile shells, analytics, and environment separation early.
  • If each tracker grows its own plumbing, the product becomes harder to ship than the habits it manages.
  • The risk is losing the actual user workflow behind unfinished platform setup and duplicated state handling.

approach

  • The monorepo separates landing, dashboard, and shared packages while keeping contracts close to the product.
  • Firestore batches tracker edits and keeps weekly plans, habits, tasks, finance, and overview state in sync.
  • Razorpay webhooks gate trial access, while Capacitor wraps the dashboard for iOS and Android.

outcome

  • One codebase ships the marketing site, web dashboard, and native mobile shells with shared auth and state.
  • Tracker work can focus on user routines because billing, analytics, and deployment boundaries are already solved.
  • Release risk stays lower because shared infrastructure changes once instead of separately for every tracker.

stack

Next.jsFirebaseFirestoreRazorpayCapacitoriOSAndroidDocker