- Marked Phase 2 as complete in roadmap and state - Updated progress tracking - All plans in Phase 2 executed successfully
118 lines
5.9 KiB
Markdown
118 lines
5.9 KiB
Markdown
# Weekly ToDo List Roadmap
|
|
|
|
## Overview
|
|
This roadmap delivers a weekly scheduler with calendar integration in five phases. It follows a goal-backward approach where each phase defines what must be TRUE for users when completion occurs. The phases are structured around key user workflows: viewing and managing tasks, enhancing user experience, integrating with external calendars, and enabling data management.
|
|
|
|
## Phases
|
|
|
|
### Phase 1: Setup & Foundation
|
|
**Goal:** Project is initialized with core dependencies and basic weekly view functionality is established.
|
|
|
|
**Plans:** 2 plans
|
|
|
|
**Plans:**
|
|
- [x] 01-01-PLAN.md — Setup project structure and core dependencies
|
|
- [x] 01-02-PLAN.md — Create foundational components and data persistence
|
|
|
|
**Requirements:**
|
|
- CORE-01: User can view tasks and events in a weekly calendar view
|
|
- CORE-02: User can add tasks to specific days within the weekly view
|
|
- CORE-03: User can edit existing tasks (change title, date, description)
|
|
- CORE-04: User can delete tasks from the weekly view
|
|
- CORE-05: User can mark tasks as complete/incomplete
|
|
- CORE-06: User can navigate between weeks using previous/next buttons
|
|
- CORE-07: User can switch between day and week views
|
|
- CORE-08: User can drag and drop tasks between days to reorganize them
|
|
- CORE-09: User can persist tasks locally in the browser
|
|
|
|
**Success Criteria:**
|
|
1. User can view a weekly calendar grid showing tasks organized by day
|
|
2. User can add new tasks by clicking on specific days in the weekly view
|
|
3. User can edit task details including title, date, and description
|
|
4. User can delete tasks from the weekly view
|
|
5. User can mark tasks as complete or incomplete with visual indicators
|
|
6. User can navigate between weeks using previous/next buttons
|
|
7. User can switch between day and week views to see different perspectives
|
|
8. User can drag and drop tasks between days to reorganize them
|
|
9. User's tasks persist between browser sessions using local storage
|
|
|
|
### Phase 2: User Experience & Advanced Features
|
|
**Goal:** Provide an intuitive and polished user experience with advanced task management features.
|
|
|
|
**Plans:** 2 plans
|
|
|
|
**Plans:**
|
|
- [x] 02-01-PLAN.md — Enhance User Experience with Advanced Features
|
|
- [x] 02-02-PLAN.md — Improve User Interface and Add Advanced Features
|
|
|
|
**Requirements:**
|
|
- UX-01: Application has a clean, minimalist interface similar to TeuxDeux
|
|
- UX-02: Application is responsive and works well on desktop and tablet
|
|
- UX-03: Tasks are visually distinct from calendar events
|
|
- UX-04: Intuitive workflow for adding and editing tasks
|
|
- UX-05: Clear visual indication of completed tasks
|
|
- ADV-01: User can create recurring tasks (daily, weekly, monthly)
|
|
- ADV-02: User can assign categories/tags to tasks
|
|
- ADV-03: User can set reminders for specific tasks
|
|
- ADV-04: User can prioritize tasks (high, medium, low)
|
|
- ADV-05: User can add descriptions and notes to tasks
|
|
|
|
**Success Criteria:**
|
|
1. Application has a clean, minimalist interface that is easy to use
|
|
2. Application is responsive and works well on desktop and tablet devices
|
|
3. Tasks are clearly distinguishable from calendar events in the UI
|
|
4. Adding and editing tasks follows an intuitive workflow with minimal steps
|
|
5. Completed tasks are visually marked in a clear way (e.g., strikethrough, different color)
|
|
6. User can create recurring tasks that repeat daily, weekly, or monthly
|
|
7. User can assign categories or tags to organize tasks
|
|
8. User can set reminders for specific tasks to be notified before due time
|
|
9. User can prioritize tasks using high, medium, or low priority levels
|
|
10. User can add detailed descriptions and notes to tasks
|
|
|
|
### Phase 3: Calendar Integration
|
|
**Goal:** Enable connection to external calendar services and display calendar events alongside user tasks.
|
|
|
|
**Requirements:**
|
|
- CAL-01: User can connect their Google Calendar account to the application
|
|
- CAL-02: User can connect their Apple Calendar account to the application
|
|
- CAL-03: Connected calendar events appear alongside user tasks in the weekly view
|
|
- CAL-04: User can view details of calendar events in the weekly view
|
|
- CAL-05: User can filter to show/hide calendar events in the view
|
|
|
|
**Success Criteria:**
|
|
1. User can connect their Google Calendar account through a secure authorization flow
|
|
2. User can connect their Apple Calendar account through a secure authorization flow
|
|
3. Events from connected calendars appear in the weekly view alongside user tasks
|
|
4. User can view event details when selecting calendar events in the view
|
|
5. User can toggle visibility of calendar events on/off in the weekly view
|
|
|
|
### Phase 4: Calendar Management & Data Export
|
|
**Goal:** Allow users to create, edit, and delete calendar events, plus enable data export/import capabilities.
|
|
|
|
**Requirements:**
|
|
- CAL-06: User can create new calendar events directly from the application
|
|
- CAL-07: User can edit existing calendar events from the application
|
|
- CAL-08: User can delete calendar events from the application
|
|
- CAL-09: User can set reminders for calendar events
|
|
- DATA-01: User can export tasks to a CSV or JSON file
|
|
- DATA-02: User can import tasks from a CSV or JSON file
|
|
- DATA-03: User can backup their data manually
|
|
- DATA-04: User can restore their data from a backup
|
|
|
|
**Success Criteria:**
|
|
1. User can create new calendar events directly from the application interface
|
|
2. User can edit existing calendar events with details such as title, date, and description
|
|
3. User can delete calendar events from the application
|
|
4. User can set reminders for calendar events
|
|
5. User can export their tasks to CSV or JSON formats
|
|
6. User can import tasks from CSV or JSON files
|
|
7. User can manually backup their data to an external location
|
|
8. User can restore their data from a previously created backup
|
|
|
|
## Progress
|
|
| Phase | Goal | Status |
|
|
|-------|------|--------|
|
|
| 1 | Setup & Foundation | Complete |
|
|
| 2 | User Experience & Advanced Features | Complete |
|
|
| 3 | Calendar Integration | Not Started |
|
|
| 4 | Calendar Management & Data Export | Not Started | |