Files
carry-your-live/ROADMAP.md
T
2026-08-23 11:36:17 +02:00

6.3 KiB

Carry Your Live — Roadmap & Feature List

Status as of Aug 2026. Based on code audit of frontend (carry-your-live/), backend (backend/), and API_SPEC.md.

Legend

  • ✅ Implemented
  • 🟡 Partial / stubbed
  • ❌ Missing

Current State (Feature List)

Core Task Management

  • ✅ Tasks CRUD with title, description, category, priority, due date/time, all-day
  • ✅ Nested subtasks (sub-subtask trees), convert task↔subtask, re-parent, reorder
  • ✅ Categories/tags with colors (task color derives from category)
  • ✅ Priorities (None → Critical) with badges
  • ✅ Repeating/recurring tasks: repeat profiles, series IDs, this/future/all delete scopes, undo-complete
  • ✅ Overdue / due-today highlighting

Screens & Navigation

  • ✅ Tabs: Todo, Calendar, Stats, Settings (+ Add Task, Day View, Task Detail, Subtask Detail stack screens)
  • ✅ Category filter chips, swipe actions, long-press multi-select, drag-to-reorder
  • ✅ Quick-add bar, calendar date strip, analog clock widget
  • ✅ Stats screen (client-side useStats)

Sync & Accounts

  • ✅ Offline-first WatermelonDB (schema v21) + full sync engine (tombstones, LWW)
  • ✅ Backend: Express + Drizzle + Postgres — auth (register/login/me/forgot/reset), sync pull/push, tasks, subtasks, categories, repeat profiles, user settings, user search
  • ✅ Login/register/sign-out UI (SyncModal)

Social

  • ✅ Friends: request/accept/decline/remove, user search, full backend routes
  • ✅ Assignee field on tasks/subtasks (schema v7)

Settings (wired up)

  • ✅ Default tag, sort order, show-completed, calendar days-ahead, accent color picker, server URL override

Gaps (what's broken or stubbed)

Item Status Where
Light mode / theme toggle ❌ Dark-only, hard-coded palette; backend has darkMode column unused src/theme.tsx:92
Notifications toggle 🟡 Stored but never read; toggling off doesn't disable reminders settings.tsx:148, src/services/notifications.ts
Global reminder preference 🟡 Stored but never applied when scheduling src/theme.tsx:180
Forgot/reset password UI 🟡 Backend done, no client UI backend/src/routes/auth.ts:149
Pull-to-refresh 🟡 Reloads local queries only, doesn't trigger server sync TaskList.tsx:129
Client settings sync 🟡 All settings AsyncStorage-only; PATCH /users/me/settings never called —
Reminder enum mismatch 🟡 Spec uses minutes ('15','30'…), client uses '5m','1h' style API_SPEC.md vs client
Webhooks / rate-limit headers 🟡 In spec, not built API_SPEC.md

Roadmap (by release)

Last released: v1.0.0 (2026-08-05). The Unreleased changelog section already contains the friends feature, assignee field, and various fixes.


v1.1.0 — Friends & Assignees (staged; ship current Unreleased + stub fixes)

Ships what's already merged plus fixes to half-wired features so nothing in the release is a dead toggle.

  • 📦 Release existing Unreleased changes: friends feature, assignee field (schema v7), QuickAddBar on overview, sync fixes for repeat/reminders
  • Fix notifications toggle so it's actually respected (src/services/notifications.ts); wire up rescheduleAllReminders()
  • Apply global reminder preference when scheduling task reminders
  • Make pull-to-refresh run a real server sync cycle (TaskList.tsx:129)
  • Add forgot/reset password UI (backend routes already exist: backend/src/routes/auth.ts:149)
  • Unify reminder offset enums between client, API_SPEC.md, and backend

Theme: "Everything you can toggle does something."


v1.2.0 — Theming & Findability

  • Light mode + follow-system-theme option; theme-mode setting synced via /users/me/settings (backend darkMode column already exists)
  • Sync all client settings to PATCH /users/me/settings instead of AsyncStorage-only
  • Task search: filter-by-text in list + global search screen
  • Friend-request badges/indicators in main UI (polling-based)
  • Resolve API error-format drift between spec and auth routes

Theme: "Look good, find anything."


v1.3.0 — Stats & Insights

  • Persisted stats snapshots for history/trends over time (current stats are per-local-data only)
  • Productivity trends: completion rates by category/priority, streaks
  • Export stats (CSV/image share)

Theme: "Show me how I'm doing."


v1.4.0 — Quick Capture & Calendar UX

Client-side only; no backend changes required.

  • Natural language quick-add ("pay rent tomorrow 5pm !finance" → parsed fields) in QuickAddBar
  • Snooze/postpone gesture on overdue tasks
  • Drag-and-drop rescheduling between days in calendar
  • Month grid view alongside the date strip
  • "Today at a glance" dashboard combining overdue, today, and stats
  • Time estimates + daily planned-vs-free-time indicator

Theme: "Capture in seconds."


v1.5.0 — Power Tools & Personalization

  • Task templates / saved routines (builds on repeat profiles)
  • Soft-archive with search (archive instead of delete)
  • Full local JSON export/import backup
  • Attachments/links/photos on tasks
  • Location-based reminders (expo-location)
  • Markdown support in descriptions
  • Deep links (carryyourlive://task/<id>) for shortcuts and notifications
  • Undo toast for all destructive actions (extend existing complete-undo)
  • Biometric lock / privacy blur on app switch
  • Haptics settings + reduced-motion mode
  • Custom app icon / theme presets beyond accent color
  • Onboarding flow + sample data seeding
  • Android home-screen widget / week agenda widget

Theme: "Make it yours, make it fast."


v2.0.0 — Collaboration

Breaking-ish social features; requires backend schema changes.

  • Real task assignment delivery: shared-list or assignment mechanism (rows are currently strictly user-scoped — assigneeId goes nowhere)
  • Shared lists / collaborative categories with permissions
  • Server push notifications (FCM/APNs): cross-device reminders, friend requests, assignments
  • Comments/activity feed on assigned tasks
  • Shared category templates ("family shopping list")
  • Reactions/acknowledgments on assignments

Theme: "Carry it together."


v2.1.0 — Platform & Ops

  • Webhooks (POST /webhooks/sync) + documented rate limiting per API_SPEC.md
  • Account management: email field, account deletion
  • Release hardening: OTA update flow validation, EAS builds for iOS/Android

Theme: "Production-grade."