My App

Todo Tracking - KISS

Minimal data model and flows after reset

Product focus

  • Keep everything as small and clear as possible (KISS).
  • Real-time syncing stays powered by Convex.
  • All effort now centers on a single todo list experience.

Data model

  • Todos
    • Field: text (string description of the task).
    • Field: completed (boolean flag).
    • Convex automatically provides fields _id and _creationTime.

Core flows

  • Add a task: call todos.create with the text.
  • View list: subscribe via todos.list to see changes live.
  • Toggle done: call todos.toggle to flip the completed flag.
  • Delete: call todos.remove when a task is no longer needed.

Suggested UX touches

  • Mobile friendly layout with clear tap targets.
  • Inline create field with optimistic feedback.
  • Simple filter buttons (All / Active / Completed) if needed later.
  • Show last update time so operators know when sync happened.

Next steps

  • Flesh out the UI in apps/web to consume the todo functions.
  • Add client-side validation and optimistic updates.
  • Re-run npx convex codegen whenever schema or functions change.