Skip to main content

CLI tool for production-ready FastAPI projects with auth, Docker, databases, and cloud deployment

Project description

🕊️ fullapi

CLI tool for production-ready FastAPI projects with auth, Docker, databases, and Redis caching

PyPI Python Downloads Issues Changelog Contributing

Quick Start

pip install fullapi
fullapi new my_api --preset production
cd my_api && pip install -r requirements.txt
uvicorn main:app --reload

Features

Feature Description
Zero Dependencies Pure Python stdlib
Production Ready Auth, Docker, DB migrations, Redis
Modern Architecture SQLAlchemy 2.0, Pydantic v2, async lifespan
Extensible Add routers/models anytime
Health Checks fullapi doctor validates structure
Database Support SQLite, PostgreSQL, MySQL with Alembic migrations
JWT Authentication Access/refresh tokens, role-based access
Redis Caching Async client with cache manager
Middleware Stack CORS, rate limiting, security headers, gzip, request ID, logging

Commands

Command Description
fullapi new <name> Create new project
fullapi add router <name> Add router to project
fullapi doctor Check project health
fullapi docker build Build Docker image
fullapi docker push Push image to registry
fullapi preset list List available presets

Presets

Preset Stack
production PostgreSQL + auth + Docker + Redis + middleware + logging
microservice SQLite + Docker + middleware + logging
minimal Basic API only

CLI Options

fullapi new my_api [OPTIONS]

--basic              Minimal structure
--full               Production structure
--db TYPE            none | sqlite | postgresql | mysql
--auth               JWT authentication
--docker             Docker + docker-compose
--redis              Redis caching
--middleware         Middleware stack
--logging            Structured logging
--preset NAME        Use preset config

Project Structure

my_api/
├── main.py              # FastAPI app with lifespan
├── core/                # Config, responses, middleware, logging
├── routers/             # API endpoints (health, users, auth, redis)
├── schemas/             # Pydantic models
├── models/              # SQLAlchemy models
├── crud/                # Database operations
├── dependencies/        # DB, auth, cache injection
├── db/                  # Session, base, mixins
├── tests/               # Pytest with fixtures
├── alembic/             # DB migrations
├── requirements.txt
└── .env.example

Built and maintained by @sahilnyk with zero dependencies

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fullapi-1.2.1.tar.gz (59.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fullapi-1.2.1-py3-none-any.whl (72.0 kB view details)

Uploaded Python 3

File details

Details for the file fullapi-1.2.1.tar.gz.

File metadata

  • Download URL: fullapi-1.2.1.tar.gz
  • Upload date:
  • Size: 59.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for fullapi-1.2.1.tar.gz
Algorithm Hash digest
SHA256 408d692037b866347230f2a4a4ffbbd2bd395ae4d1136938f3503048afad33a9
MD5 0988c36981db590e56a30da1202492af
BLAKE2b-256 36db1fa1797e4db67dc2dbe3e62a9be1ebf02dc4e464838084339cdb62db0030

See more details on using hashes here.

File details

Details for the file fullapi-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: fullapi-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 72.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for fullapi-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 854078740a2360742f94a36382cfc602ae64363e69fc8637c681ac5aa4f3d565
MD5 1d0821ea943dc457542577689532dd10
BLAKE2b-256 986cb138b6e83e1b82d18f7c3aa4fb05015e799a27ca0c8a546eb28a1e0a4643

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page