Skip to content

whoismehfooz/fastapi-task-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ FastAPI Task Manager API

A clean and scalable Task Management API built using FastAPI. This project demonstrates real-world backend concepts like CRUD operations, filtering, and partial updates.


πŸ“Œ Features

  • Create tasks πŸ“
  • Get all tasks πŸ“–
  • Get single task by ID πŸ”
  • Update tasks ✏️
  • Delete tasks ❌
  • Filter tasks by completion status ⚑
  • Filter tasks by priority 🎯
  • Combined filtering support πŸ”₯
  • Partial updates using PATCH (toggle task status)

πŸ›  Tech Stack

  • FastAPI
  • Python
  • Uvicorn
  • Pydantic

πŸ“‚ Project Structure

app/
β”œβ”€β”€ main.py
β”œβ”€β”€ schemas.py
β”œβ”€β”€ mock_data.py
β”œβ”€β”€ routers/
β”‚   └── tasks.py

βš™οΈ Setup & Run

git clone https://github.com/your-username/fastapi-task-manager.git
cd fastapi-task-manager

python -m venv venv
source venv/bin/activate

pip install -r requirements.txt

uvicorn app.main:app --reload

🌐 API Endpoints

Method Endpoint Description
POST /tasks Create Task
GET /tasks Get All Tasks
GET /tasks/{id} Get Single Task
PUT /tasks/{id} Update Task
DELETE /tasks/{id} Delete Task
GET /tasks?completed=true Filter by status
GET /tasks?priority=high Filter by priority
PATCH /tasks/{id}/toggle Toggle task status

πŸ“– API Docs

Swagger UI available at:

πŸ‘‰ http://127.0.0.1:8000/docs


🧠 What I Learned

  • Designing REST APIs using FastAPI
  • Implementing CRUD operations
  • Handling query parameters and filtering
  • Using PATCH for partial updates
  • Structuring scalable backend projects

πŸš€ Future Improvements

  • Database integration (PostgreSQL + SQLAlchemy)
  • Authentication system (JWT)
  • Pagination & sorting
  • Docker deployment

πŸ‘¨β€πŸ’» Author

Built with consistency and focus πŸ’ͺ More projects coming soon πŸš€

About

πŸ‘‰ Task Manager API with filtering, multi-condition queries, and PATCH-based partial updates using FastAPI

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages