Python

Python is Putnami's workspace surface for services, libraries, data workloads, and automation that should live beside TypeScript and Go without becoming a separate toolchain island.

Status: extension-first. Python currently focuses on project lifecycle - templates, dependency sync, lint, test, serve, and Docker packaging - rather than a broad application framework layer.

What is ready today

Capability Where to start Why it matters
First project Getting Started Create a service or library and run it through Putnami
Project lifecycle Extension phases Detection, dependency sync, test, lint, serve, Docker, uv, Ruff, pytest
New services and libraries Templates python-server and python-library start with workspace conventions
Workspace orchestration Tooling & Workspace Python participates in the same graph, selection, and impacted jobs as every other project
Automation output CLI Deterministic command output for CI and agents
Fast feedback loops Jobs & caching Cache-aware test/lint/serve behavior inside the shared runner

Good fits

Use Python inside Putnami when you want:

  • a FastAPI service created from the python-server template
  • an importable package created from the python-library template
  • data, ML, or automation code in the same repo as product services
  • CI and agent workflows that call putnami test, putnami lint, and putnami serve instead of bespoke scripts
  • a path to Docker publishing without hand-maintaining each project shape

How Python fits the workspace

Python projects are first-class workspace nodes. They can be selected, tested, linted, served, and published through Putnami commands, while Python-specific behavior stays delegated to uv, Ruff, pytest, and the generated project shape.

putnami projects create recommender --template python-server
putnami deps install
putnami test recommender
putnami serve recommender
  1. Read Getting Started to create a Python service or library.
  2. Use How To / Guides for concrete workspace tasks.
  3. Read Extension phases for the exact jobs and options.
  4. Read Templates before creating a new Python project.
  5. Read Workspace if you need to understand how Python projects participate in impacted work.

If you need a richer web or backend framework today, start with TypeScript or Go, then use Python where it adds the most leverage.