Files
agentic-studio/zipit/loop_runs/v5_feedback/requirements
2026-04-12 18:48:14 +03:00

40 lines
1.5 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 with filtering by status (e.g., pending, completed).
3. Update existing tasks including changing the title, description, due date, and status.
4. Delete tasks that are no longer needed.
5. Mark tasks as completed or pending.
6. Search for tasks by keywords in the title or description.
7. Export task list to a CSV file.
**DATA MODEL:**
1. **Task**
- id (integer, primary key)
- title (string, required)
- description (text, optional)
- due_date (date, optional)
- status (enum ['pending', 'completed'], default 'pending')
2. **User**
- id (integer, primary key)
- username (string, unique, required)
- email (string, unique, required)
- password_hash (string, required)
**API ENDPOINTS:**
1. **GET /tasks** - Retrieve all tasks with optional filters by status.
2. **POST /tasks** - Create a new task.
3. **GET /tasks/{task_id}** - Retrieve a specific task by ID.
4. **PUT /tasks/{task_id}** - Update an existing task.
5. **DELETE /tasks/{task_id}** - Delete a task.
6. **POST /users/register** - Register a new user.
7. **POST /users/login** - Authenticate and return a token for authorized access.
**CONSTRAINTS:**
- Must use SQLite as the database.
- No authentication is required for accessing CRUD operations.
- Implement unit tests for all API endpoints.