Automated Action a054c1c20d Add simple todo app with FastAPI and SQLite
- Created FastAPI application with CRUD endpoints for todos
- Set up SQLAlchemy with SQLite database
- Created database models and Pydantic schemas
- Added Alembic for database migrations
- Added health check endpoint
- Updated README with project information

generated with BackendIM... (backend.im)
2025-05-12 22:59:07 +00:00

Simple Todo App

This is a simple Todo API built with FastAPI and SQLite.

Features

  • Create, read, update, and delete todo items
  • Health check endpoint
  • SQLite database with SQLAlchemy ORM
  • Alembic for database migrations

Project Structure

simpletodoapp/
│
├── alembic/                      # Database migrations
│   ├── versions/                 # Migration versions
│   ├── env.py                    # Alembic environment configuration
│   └── script.py.mako            # Migration script template
│
├── app/                          # Application package
│   ├── __init__.py
│   ├── crud.py                   # CRUD operations
│   ├── database.py               # Database setup and connection
│   ├── models.py                 # SQLAlchemy models
│   └── schemas.py                # Pydantic schemas for API
│
├── alembic.ini                   # Alembic configuration
├── main.py                       # FastAPI application and endpoints
└── requirements.txt              # Python dependencies

API Endpoints

  • GET /health - Health check endpoint
  • GET /todos - Get all todos
  • POST /todos - Create a new todo
  • GET /todos/{todo_id} - Get a specific todo
  • PUT /todos/{todo_id} - Update a todo
  • DELETE /todos/{todo_id} - Delete a todo

Getting Started

  1. Install dependencies:

    pip install -r requirements.txt
    
  2. Run database migrations:

    alembic upgrade head
    
  3. Start the application:

    uvicorn main:app --reload
    
  4. Access the API documentation at http://localhost:8000/docs

Todo Item Schema

{
  "id": 1,
  "title": "Task title",
  "description": "Task description",
  "completed": false,
  "created_at": "2023-01-01T00:00:00",
  "updated_at": "2023-01-01T00:00:00"
}
Description
Project: Simple Todo App
Readme 35 KiB
Languages
Python 94.5%
Mako 5.5%