Skip to content

eduveliz/Task-Management-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

️ Task Management API

A RESTful API built with FastAPI and SQLAlchemy to manage projects, task lists (like Trello), and individual tasks. Designed as an educational project to improve Python, relational database, and nested structure skills.


Tech Stack

  • Python 3.10+
  • FastAPI
  • SQLAlchemy
  • SQLite (easily switchable to PostgreSQL)
  • Pydantic

Project Structure

Task-Management-API/
├── app/
│   ├── main.py
│   ├── database.py
│   ├── models/
│   │   ├── project.py
│   │   ├── list.py
│   │   └── task.py
│   ├── schemas/
│   │   ├── project.py
│   │   ├── list.py
│   │   └── task.py
│   ├── routers/
│   │   ├── project.py
│   │   ├── list.py
│   │   └── task.py
│   └── create_tables.py
├── requirements.txt
└── README.md

️ Installation

  1. Clone the repository:
git clone https://github.com/eduveliz/Task-Management-API.git
cd Task-Management-API
  1. Create and activate a virtual environment:
python3 -m venv env
source env/bin/activate  # On Windows: env\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Create the database tables:
python create_tables.py

This will generate a tasks.db file (if you're using SQLite).


Run the Server

Launch the development server with:

uvicorn app.main:app --reload

Access the auto-generated API docs:


Key Endpoints

Method Route Description
POST /projects/ Create a new project
GET /projects/ List all projects
POST /lists/ Create a new list
GET /lists/ List all lists
POST /tasks/ Create a new task
GET /tasks/ List all tasks

Next Steps

  • Support for nested endpoints (/projects/{id}/lists)
  • User authentication
  • Deploy on Render or Railway
  • Write tests with pytest

Author

Developed by Eduardo Veliz as a personal project to deepen Python and backend knowledge.


License

This project is licensed under the MIT License. See the LICENSE file for details.

About

A RESTful API built with FastAPI and SQLAlchemy to manage projects, task lists (like Trello), and individual tasks. Designed as an educational project to improve Python, relational database, and nested structure skills.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages