32 lines
1.2 KiB
Plaintext
32 lines
1.2 KiB
Plaintext
**PROJECT NAME:** Todo-sovellus
|
|
|
|
**GOAL:** Create a simple task management application for individuals to keep track of their daily tasks and manage them efficiently.
|
|
|
|
**CORE FEATURES:**
|
|
1. Add new tasks with title, description, due date, and status.
|
|
2. View all tasks in a list format.
|
|
3. Filter tasks by status (e.g., pending, completed).
|
|
4. Update task details such as title, description, due date, and status.
|
|
5. Delete individual tasks.
|
|
6. Mark tasks as complete or incomplete.
|
|
7. Search for tasks by keywords in the title or description.
|
|
|
|
**DATA MODEL:**
|
|
1. **Task**
|
|
- id (integer, primary key)
|
|
- title (string, required)
|
|
- description (text, optional)
|
|
- due_date (date, optional)
|
|
- status (enum ['pending', 'completed'], default='pending')
|
|
|
|
**API ENDPOINTS:**
|
|
1. **GET /tasks** - Retrieve all tasks.
|
|
2. **POST /tasks** - Create a new task.
|
|
3. **GET /tasks/{id}** - Retrieve a specific task by ID.
|
|
4. **PUT /tasks/{id}** - Update an existing task.
|
|
5. **DELETE /tasks/{id}** - Delete a specific task.
|
|
6. **GET /tasks/status/{status}** - Filter tasks by status.
|
|
|
|
**CONSTRAINTS:**
|
|
- Must use SQLite as the database.
|
|
- No authentication is required for accessing endpoints. |