Thanks to visit codestin.com
Credit goes to modern-python.org

Skip to content

Open-source templates and libraries for building production-ready Python applications — web services, microservices, and the dependency injection that wires them together.

  • Project templates


    Dockerized, batteries-included starting points for new web apps.

    Browse templates

  • Dependency injection


    The modern-di family of DI frameworks and integrations.

    Browse DI

  • Microservices, HTTP & messaging


    Bootstrapping, HTTP clients, and FastStream broker tooling.

    Browse services

  • Utilities


    Small, focused helpers for everyday Python projects.

    Browse utilities

The stack

The modern-python projects fit together into one coherent stack for building production Python services. Use one piece or all of them — each is independent.

  • Start from a template. fastapi-sqlalchemy-template and litestar-sqlalchemy-template give you a dockerized, batteries-included app — FastAPI or Litestar, SQLAlchemy 2, PostgreSQL, with dependency injection already wired.
  • Wire your dependencies with modern-di — typed, scoped dependency injection with one wiring shared across web frameworks (FastAPI, Litestar, Starlette, Flask, aiohttp), task queues (Celery, arq, taskiq), RPC and messaging (gRPC, FastStream, aiogram), and CLIs (Typer). (that-depends, its production-proven predecessor, is still maintained.)
  • Call other services reliably with httpware — an httpx-based client with typed errors, typed response bodies, and a composable resilience chain (retry, bulkhead, circuit breaker).
  • Publish events reliably with faststream-outbox — the transactional outbox pattern for FastStream + PostgreSQL: write your domain row and outbox row in one transaction, relay to any broker with one decorator.
  • Instrument everything with lite-bootstrap — OpenTelemetry, Prometheus, Sentry, and structlog wired into FastAPI, Litestar, or FastStream in a few lines.

Every project is built with the same tooling (uv, ruff, ty) under the MIT license, to one shared standard. Browse the full catalog below.

Project templates

Dependency injection

Which one should I use?

Start new projects on modern-di — a minimal core plus the integrations listed below.

that-depends is the earlier, async-first sibling and stays maintained. Coming from it? modern-di ships a migration guide — and one from dependency-injector.

Microservices, HTTP & messaging

  • lite-bootstrap — lightweight package for bootstrapping new microservices.
  • httpware — HTTP client framework with sync/async clients, middleware chain, and built-in resilience (retry, bulkhead).
  • faststream-redis-timers — FastStream broker integration for Redis-backed distributed timer scheduling.
  • faststream-concurrent-aiokafka — concurrent message processing middleware for FastStream with aiokafka.
  • faststream-outbox — FastStream broker integration for the transactional outbox pattern with Postgres.

Utilities

  • compose2pod — convert a Docker Compose file into a script that runs its services as a single Podman pod.
  • db-retry — retry helpers for database operations.
  • eof-fixer — automatically fix newlines at the end of files.
  • semvertag — auto-tag your GitHub/GitLab repo with semantic version tags from CI.

Built with uv, ruff, and ty.