Files
time_to_leave/CHECKLIST.md
T
fegger 20159262c1 Add getLeaveStatus utility and update project status
- Introduce `getLeaveStatus` function in `packages/core/src/status-utils.ts` to determine leave-by status based on
  journey data
- Mark Phase 1 mobile app tasks as complete in `CHECKLIST.md`
- Add mobile workspace configurations and npm scripts
2026-05-10 22:14:41 +02:00

1.9 KiB

TimeToLeave — Implementation Checklist

Phase 1 — Workspace + Shared Packages (Steps 1-9)

# Step ✔️
1 Create safety baseline (typecheck, lint, test, build) [x] [x]
2 Add workspace support to root package.json [x] [x]
3 Move web app into apps/web/ [x] [x]
4 Create packages/core/ with shared types + utilities [x] [x]
5 Update web imports to use @timetoleave/core [x] [x]
6 Create packages/api-client/ with typed API wrapper [x] [x]
7 Refactor web hooks to use api-client [x] [x]
8 Run web verification again (typecheck, lint, test, build) [x] [x]
9 Phase 1 summary verification (all packages compile) [x] [x]

Phase 2 — Expo Mobile MVP (Steps 10-18)

# Step ✔️
10 Scaffold Expo mobile app with TypeScript [x] [x]
11 Configure mobile API base URL (.env + singleton) [x] [x]
12 Add mobile app shell (navigation + 5 screens) [x] [x]
13 Add mobile event store (AsyncStorage) [x] [x]
14 Build Event List screen [x] [x]
15 Build Add Event screen with validation [x] [x]
16 Build Origin Setup in Settings [x] [x]
17 Build Event Detail screen (trains + bike + errors) [x] [x]
18 Phase 2 summary verification [ ] [ ]

Phase 3 — Notifications, Calendar, Deployment (Steps 19-24)

# Step ✔️
19 Add local notifications (expo-notifications) [ ] [ ]
20 Add native calendar import (post-MVP) [ ] [ ]
21 Add mobile tests (core + API + store + screens) [ ] [ ]
22 Prepare deployment (web backend + EAS mobile) [ ] [ ]
23 Release MVP (verify acceptance criteria) [ ] [ ]
24 Plan post-MVP improvements [ ] [ ]

Legend:

  • = Done (code written)
  • ✔️ = Verified (tests/builds pass)