Automated Action c1765ee96b Implement Task Manager API
- Set up project structure with FastAPI
- Configure SQLite database with SQLAlchemy
- Create Task model with Alembic migrations
- Implement CRUD API endpoints for tasks
- Add health check and CORS configuration
- Update documentation
2025-06-04 08:04:34 +00:00
2025-06-04 08:04:34 +00:00
2025-06-04 08:04:34 +00:00
2025-06-04 07:59:20 +00:00
2025-06-04 08:04:34 +00:00
2025-06-04 08:04:34 +00:00
2025-06-04 08:04:34 +00:00
2025-06-04 08:04:34 +00:00

Task Manager API

This is a FastAPI-based Task Manager API with SQLite backend. It provides endpoints for managing tasks with features like priority, due dates, and filtering.

Features

  • Create, read, update, and delete tasks
  • Mark tasks as completed
  • Filter tasks by completion status and priority
  • SQLite database with SQLAlchemy ORM
  • Alembic for database migrations
  • FastAPI automatic API documentation

API Endpoints

  • GET /health: Health check endpoint
  • GET /api/v1/tasks: List all tasks (with optional filtering)
  • POST /api/v1/tasks: Create a new task
  • GET /api/v1/tasks/{task_id}: Get a specific task
  • PUT /api/v1/tasks/{task_id}: Update a task
  • DELETE /api/v1/tasks/{task_id}: Delete a task
  • PATCH /api/v1/tasks/{task_id}/complete: Mark a task as completed

Project Structure

taskmanagerapi/
├── alembic.ini              # Alembic configuration
├── main.py                  # FastAPI application entry point
├── requirements.txt         # Python dependencies
├── app/                     # Application code
│   ├── api/                 # API routes
│   │   └── v1/              # API version 1
│   │       ├── endpoints/   # API endpoint handlers
│   │       └── router.py    # API router
│   ├── core/                # Core application code
│   │   └── config.py        # Application configuration
│   ├── db/                  # Database related code
│   │   └── session.py       # Database session setup
│   ├── models/              # SQLAlchemy models
│   │   └── task.py          # Task model
│   └── schemas/             # Pydantic schemas
│       └── task.py          # Task schemas
└── migrations/              # Database migrations
    ├── env.py               # Alembic environment
    ├── script.py.mako       # Migration script template
    └── versions/            # Migration versions
        └── 01_initial_migration.py  # Initial migration

Getting Started

Prerequisites

  • Python 3.8+
  • pip (Python package installer)

Installation

  1. Clone the repository
  2. Install dependencies:
    pip install -r requirements.txt
    
  3. Apply migrations:
    alembic upgrade head
    
  4. Start the server:
    uvicorn main:app --reload
    

API Documentation

Once the server is running, you can access:

Description
Project: Task Manager API
Readme 38 KiB
Languages
Python 95.4%
Mako 4.6%