This is REST API for managing boards, lists and cards (similar with Trello). Project was written with FastAPI. In the second part of the project, the data storage was migrated from JSON files to a PostgreSQL relational database, and the application was packaged in Docker.
- Database: PostgreSQL 15
- Backend: FastAPI + Uvicorn
- ORM: SQLAlchemy
- Infrastructure: Docker and Docker Compose
You don't need to install Python or PostgreSQL on your computer. Docker is sufficient.
- Clone the repository (or unzip the archive) and navigate to the project folder.
- In the terminal, run the command:
docker compose up --build
GET /healthcheck db
POST /create_user— Create new user and return X-API-Key.
GET /boards— Ge t all user's boards.POST /boards— Create new board.POST /boards/{board_id}/lists— Create new list in board.POST /boards/{board_id}/lists/{list_id}/cards— Create new card in list.
GET /boards/{board_id}/lists/{list_id}/cards— Get cards (There are two filters: status и assignee).PUT /boards/{board_id}/cards/{card_id}/move— move card from one list to other.
Autorization: All endpoints require x_api_key parameter.
- Mozzhukhin Egor