Skip to content

Fsoky/fastapi-crud

Repository files navigation

FastAPI CRUD + Redis Cache

A clean, fast, and production-ready example of a CRUD API built with FastAPI, PostgreSQL, and Redis caching.

Python FastAPI Postgres Redis Pydantic uv Docker

Features

  • Full async CRUD operations
  • Smart Redis caching for GET endpoints (with automatic cache invalidation on create/update/delete)
  • PostgreSQL via Tortoise ORM + asyncpg
  • Pydantic v2 models & strict validation
  • Dependency injection & clean project structure
  • Managed with uv – the blazingly fast Python package manager

API Endpoints

Method Endpoint Description
GET /api/v1/users List all users
POST /api/v1/users Create a new user
GET /api/v1/users/{id} Get user by ID (cached)
PUT /api/v1/users/{id} Update user (invalidates cache)
DELETE /api/v1/users/{id} Delete user (invalidates cache)

Quick Start

Tip

http://localhost:8000/docs - Swagger
http://localhost:5000 - PgAdmin

  • Clone repo
git clone https://github.com/Fsoky/fastapi-crud.git
cd fastapi-crud
  • Docker compose up
docker compose up

About

A simple example of CRUD in FastAPI (Python) with Redis cache

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages