Python Getting Started (experimental)
Use Python only when you deliberately want an experiment with a FastAPI service, importable package, data workload, or automation component in the same Putnami workspace graph as TypeScript and Go. Python is not a default path and makes no compatibility or feature-parity promise with those surfaces.
Python is extension-first: Putnami gives explicitly configured Python projects templates, dependency sync, lint, test, serve, Docker packaging, and workspace orchestration. It does not provide a Python framework package family.
Pick the project shape
| You need... | Template | What you get |
|---|---|---|
| An experimental FastAPI service | python-server |
ASGI app, uvicorn serve command, tests, Docker packaging |
| An experimental Python package | python-library |
Importable module, packaging metadata, tests |
If you are starting from an empty directory:
putnami initCreate the project
For a service:
putnami deps add @putnami/python
putnami extensions install
putnami projects create api --template python-server
putnami deps install
putnami test api
putnami serve apiFor a library:
putnami projects create features --template python-library
putnami deps install
putnami test featuresWhat to look at first
Start with the project lifecycle:
- Extension for the exact Python jobs and opt-in configuration.
- Templates for the generated service and library shapes.
- Workspace to understand how Python projects participate in impacted work.
- Jobs & caching to keep feedback loops fast.
Daily loop
putnami test api
putnami serve api
putnami lint,test,build --impactedThe Python toolchain stays Python-native, but the workflow stays workspace-native.
Read next
- Python extension for uv, Ruff, pytest, serve, and Docker behavior.
- TypeScript getting started if the project needs a full web application surface today.
- Go getting started if the project needs a compiled backend service surface.