docs: create roadmap (4 phases)

Phases:
1. Setup & Authentication: AUTH and UI requirements
2. Task Management and Weekly View: TASK and WEEK requirements
3. Calendar Integration: CAL requirements
4. Final Polish: UI enhancements and refinement

All v1 requirements mapped to phases.
This commit is contained in:
mARTin 2026-01-24 18:33:04 +01:00
parent 3a41bb2345
commit 0db2f48fd8
2 changed files with 75 additions and 117 deletions

View File

@ -1,125 +1,80 @@
# Weekly ToDo List Roadmap
# My Weekly To Do 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.
This roadmap delivers the My Weekly To Do List application in four phases, starting with core functionality and building toward a complete, polished experience. Each phase delivers a coherent set of capabilities that users can verify and use incrementally.
## 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
### Phase 1: Setup & Authentication
**Goal:** Users can securely access the application and manage their account
**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
- AUTH-01: User can sign up with email and password
- AUTH-02: User receives email verification after signup
- AUTH-03: User can reset password via email link
- AUTH-04: User session persists across browser refresh
- UI-01: Clean, minimal interface similar to TeuxDeux
- UI-02: Responsive design that works on desktop and tablet
- UI-03: Intuitive controls for task management
**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
1. User can create an account with email/password
2. User receives and can verify email address after signup
3. User can reset password via email link
4. User stays logged in across browser sessions
5. Application interface loads and displays correctly on desktop and tablet devices
6. User can navigate core UI elements intuitively
### 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
### Phase 2: Task Management and Weekly View
**Goal:** Users can create, manage, and visualize their tasks in a weekly calendar view
**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
- TASK-01: User can create tasks with title and description
- TASK-02: User can edit existing tasks
- TASK-03: User can delete tasks
- TASK-04: User can mark tasks as complete/incomplete
- TASK-05: User can view tasks in a weekly grid view
- WEEK-01: User can navigate between weeks
- WEEK-02: User can view tasks and calendar events in a unified weekly view
- WEEK-03: User can drag and drop tasks between days of the week
- WEEK-04: User can see time allocation clearly with visual indicators
**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
1. User can create new tasks with title and description
2. User can edit existing tasks with updated information
3. User can delete tasks from their list
4. User can mark tasks as complete or incomplete
5. User can view tasks organized in a weekly grid layout
6. User can navigate between different weeks in the calendar
7. User can drag tasks between different days of the week
8. User can clearly see how time is allocated across days with visual cues
### Phase 3: Calendar Integration
**Goal:** Enable connection to external calendar services and display calendar events alongside user tasks.
**Plans:** 3 plans
**Plans:**
- [ ] 03-01-PLAN.md — Implement calendar event integration for Google and Apple Calendar
- [ ] 03-02-PLAN.md — Implement calendar event filtering and detail viewing
- [ ] 03-03-PLAN.md — Implement visual styling for calendar events
**Goal:** Users can connect external calendar accounts and synchronize data
**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
- CAL-01: User can connect their Google Calendar account
- CAL-02: User can connect their Apple Calendar account
- CAL-03: User can view calendar events alongside tasks in weekly view
- CAL-04: User can synchronize tasks and calendar events bidirectionally
**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
1. User can connect their Google Calendar account through OAuth
2. User can connect their Apple Calendar account through OAuth
3. User can see calendar events displayed alongside tasks in the weekly view
4. User's tasks and calendar events are synchronized bidirectionally between the app and connected calendars
5. User can manage calendar connection settings from the application
### Phase 4: Calendar Management & Data Export
**Goal:** Allow users to create, edit, and delete calendar events, plus enable data export/import capabilities.
### Phase 4: Final Polish
**Goal:** Enhanced user experience and refined functionality
**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
- (No specific requirements for this phase, though all previous requirements are completed)
**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 |
1. All application features function consistently and reliably
2. User interface is polished and responsive across all device sizes
3. Application performs well under typical usage scenarios
4. All user flows are intuitive and well-tested
5. Accessibility standards are met for core functionality

View File

@ -3,28 +3,31 @@
## Project Reference
**Core Value:** Provide users with a streamlined, unified view of their weekly tasks and calendar events that is faster and easier to use than traditional to-do list and calendar applications combined.
**Current Focus:** Building a web-based weekly scheduler with calendar integration
**Current Focus:** Building a web-based weekly task management application with calendar integration
## Current Position
**Phase:** 2
**Plan:** 2 plans
**Status:** Complete
**Progress:** 25%
**Phase:** Setup & Authentication (Phase 1)
**Plan:** Begin with foundational setup and authentication
**Status:** Roadmap planned, awaiting execution
## Performance Metrics
- Requirements coverage: 100%
- Phases defined: 4
- Dependencies identified: Yes
- [x] Requirements defined and categorized (18 total)
- [x] Roadmap structure finalized with 4 phases
- [x] 100% requirement coverage confirmed
- [ ] Implementation progress (will update during execution)
## Accumulated Context
- Project is a weekly scheduler similar to TeuxDeux and Tweek.so
- Target platform: Web-based application
- Timeline: MVP within 3 weeks
- Budget: Free/open-source approach
- Core functionality: Weekly view of tasks and calendar events
- Advanced features: Recurring tasks, categories, reminders, theme customization
- Calendar integration: Google Calendar and Apple Calendar
- Data export/import: CSV and JSON formats
- Core value proposition centered on unified weekly view of tasks and calendar events
- Architecture research suggests React/Node.js/PostgreSQL stack with layered approach
- Key differentiator is combined task/calendar view with drag-and-drop functionality
- MVP includes: weekly view, task CRUD, calendar integration, responsive UI
- Out of scope: mobile app, team features, offline mode, complex reporting
## Session Continuity
Phase 2 (User Experience & Advanced Features) has been completed with all plans executed.
This is the initial planning phase. The roadmap has been established with four clear phases:
1. Setup & Authentication (UI, AUTH requirements)
2. Task Management and Weekly View (TASK, WEEK requirements)
3. Calendar Integration (CAL requirements)
4. Final Polish (UI enhancements and refinement)
Next steps are to begin planning Phase 1 implementation details.