This project is an implementation of API functionality that allows to perform CRUD operations on a database using FastAPI, sqlite and sqlalchemy. The database includes tables of tasks and users, each of whom has the ability to perform operations only on their tasks. To implement this, the functionality of registration, authentication and authorization of users was written. JWT is used as the authentication method. You can see the handlers and the scheme, provided by the Swagger UI below.
Handlers
Scheme
- Possibility to prioritize tasks. Allow users to set task priority levels (high, medium, low) and display tasks in the order of priority.
- Task coloboration. Allow multiple users to work over the same task.
- Better task search. Allow users to search tasks by tags or by categories they want.
- Task history. Save history for each user so they can see their progress.
- Task notification. Notify user if the deadline of any task is coming or has already passed.