smatica.net

Problem

Content teams needed one source of truth for lessons and puzzle content. Without that, admin publishing and learner experiences drift out of sync.

Solution

I designed a Turborepo monorepo with a Next.js admin, an Expo learner app, and a Convex backend so content could be authored once and shipped reliably to students.

Technical highlights

  • • Admin tooling supports topic, puzzle, lesson, media, and user workflows with publish-state controls.
  • • Puzzle authoring was designed for multiple game types instead of one hard-coded editor.
  • • Shared Convex contracts reduce backend drift between the web admin and learner app.
  • • Strict typing, schema-driven forms, and reusable workspace config kept the monorepo easy to extend.