A modern CLI for scaffolding backend projects across Python, Go, and Rust — roll your own stack.
The CLI scaffolds Python (FastAPI, Litestar, Django, Flask), Go (Gin, Fiber, Echo, Chi, stdlib), and Rust (Axum, Actix-Web, Rocket, Warp, Salvo) backends — all in the same binary. All three language paths are shipped: Python via uvx tristack, Go and Rust via the curl/PowerShell installers.
Built as a fork of Better-T-Stack (MIT licensed) — the prompt UX framework, virtual file-system template engine, and Stack Builder web UI are adapted from the original project, extended to scaffold Python, Go, and Rust stacks instead of TypeScript/JavaScript.
- Roll your own stack: you pick only the parts you need, nothing extra.
- Minimal templates: bare-bones scaffolds with zero bloat.
- Latest dependencies: always use current, stable versions by default.
- Native-first distribution: Python devs use
uvx tristack; Go and Rust get their own curl/PowerShell installers. - Free and open source: forever, under the MIT License.
# Python — run on demand via uvx
uvx tristack my-apiOr install it as a tool:
# pip / pipx
pipx install tristack
tristack my-api
# or via uv
uv tool install tristack
tristack my-apiNon-interactive default project:
uvx tristack my-api --yesGo and Rust developers run the same tristack binary, installed with:
# Windows (PowerShell)
irm https://tristack.space/install.ps1 | iex
# macOS / Linux
curl -fsSL https://tristack.space/install.sh | bash- Languages: Python — FastAPI, Litestar, Django, Flask. Go — Gin, Fiber, Echo, Chi, stdlib. Rust — Axum, Actix-Web, Rocket, Warp, Salvo.
- ORM: Python: SQLModel (default), SQLAlchemy, Tortoise, or none · Go: GORM, SQLC, SQLx, or none · Rust: SeaORM, Diesel, SQLx, or none
- Migrations: Python: Alembic (default) or none · Go: Goose, golang-migrate, or none · Rust: none
- Databases: SQLite (default), PostgreSQL, MySQL, or none
- Package managers: Python: uv (default), poetry, or pip · Go: go · Rust: cargo
- Addons: Docker, Ruff, Pytest, GitHub Actions, and more
- Agent automation: JSON-first
create-jsoncommand for AI agents and CI pipelines
Type-safe, dependency-pinned scaffolding with no lock-in: you choose only what you need.
Use the Stack Builder to pick a language, framework, ORM, migrations, database, package manager, and addons — then copy the ready-to-run uvx tristack command for your exact stack.
Visit tristack.space for full documentation, guides, and examples.
This repository is organized as a monorepo containing:
- CLI:
apps/cli— the scaffolding CLI tool - Documentation:
apps/web— official website and documentation - Python package:
packages/tristack-py— PyPI distribution of the CLI - Template engine:
packages/template-generator - Shared types:
packages/types
# Clone the repository
git clone https://github.com/AbdullahMukadam/tristack.git
# Install dependencies
bun install
# Start CLI development
bun dev:cli
# Start website development
bun dev:webPlease read the Contribution Guide first and open an issue before starting new features to ensure alignment with project goals.
- Docs:
./apps/web/content/docs/contributing.mdx - Repo guide:
./.github/CONTRIBUTING.md
TriStack is released under the MIT License. It is a fork of Better-T-Stack (MIT licensed) — the prompt UX framework, virtual file-system template engine, and Stack Builder web UI are adapted from the original project, extended to scaffold Python, Go, and Rust backend stacks.