Skip to content

Repository files navigation

CPA Templates

LicensePython VersionDiscord

CI Integrity (L0)CI Templates (L1)CI Extensions (L2)CI Profiles (L3)

Official templates and extensions for create-awesome-python-app.

Quick start

Scaffold locally with the CLI:

# Interactive mode
uvx create-awesome-python-app
# With template and extensions
uvx create-awesome-python-app my-api \
--template fastapi-starter \
--addons github-setup fastapi-docker

For local development against this checkout:

CI=true uvx create-awesome-python-app my-api \
--template "file://$PWD?subdir=templates/fastapi-starter" \
--no-interactive

Available templates

TemplateTypeUse case
fastapi-starterfastapi-backendProduction-ready FastAPI API with feature-based layout, uv, Ruff, pytest, mypy, and pyright
cli-startercli-appTyper CLI with multi-command layout, uv, Ruff, pytest, and a console script entry point
celery-workercelery-workerCelery worker with modular tasks, Redis defaults, pydantic-settings, and eager-mode tests
django-apidjango-backendDjango + DRF API with feature apps, OpenAPI-friendly health probes, uv, and Ruff
uv-workspace-starteruv-workspacePython monorepo using uv workspaces: shared packages and apps with one lockfile, Ruff, and Pyright

Documentation

FileContents
docs/ARCHITECTURE.mdSystem overview, type system, generation flow
docs/AUTHORING.mdDirectory layout, cpa.config.json, extensions
docs/AUTHORING.es.mdSpanish translation of AUTHORING.md
docs/TESTING.mdLocal testing and CI workflow
docs/AI_ML_AUTHORING.mdTaxonomy and constraints for AI/ML templates and extensions
docs/recipes/FASTAPI_AI_ROUTE_OWNERSHIP.mdPrefix ownership, mounting, and middleware hooks for FastAPI AI extensions
CONTRIBUTING.mdHow to add templates and extensions
docs/MAINTENANCE_RUNBOOK.mdOperating runbook: decision trees, checklists, and procedures for maintaining the CLI and templates
docs/MAINTENANCE_TEMPLATES.mdGuidance for inspecting, fixing, and adding templates and extensions
docs/MAINTENANCE_DEPENDENCIES.mdHow to investigate, update, and resolve dependency conflicts
docs/MAINTENANCE_SECURITY.mdProcedures for triaging alerts, audits, and fixing CVEs
docs/MAINTENANCE_CI.mdHow to diagnose, run, and troubleshoot CI workflows and layered matrices
docs/MAINTENANCE_RELEASE.mdRelease and publishing guidance for PyPI tags, workflows, and verification

Registry

The canonical catalog is templates.json, consumed by the CLI from:

https://raw.githubusercontent.com/Create-Python-App/cpa-templates/main/templates.json

CI

WorkflowTriggerScope
CI Integrity (L0)PR + main + weeklyRegistry paths + curated profiles
CI Templates (L1)PR + main + weeklyEvery template alone via uvx (PyPI)
CI Extensions (L2)PR (changed) + weeklyOne extension × canonical template
CI Profiles (L3)PR (changed) + weeklyCurated stacks in ci/profiles/

Scaffolding always uses uvx create-awesome-python-app@latest from PyPI (never a source checkout of the CLI). Details: docs/TESTING.md, #46.

Related repositories

👥 Contributors

Made with contributors-img.

About

No description, website, or topics provided.

Resources

Contributing

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages