← Crafts
Flint preview

Flint

Platform tooling Solo engineer

A Copier template and CLI for backend-only FastAPI projects — uv, Ruff, SQLModel, JWT auth, and Docker without inheriting a full-stack starter.

Problem

Starting a Python API still burns time on the same scaffolding: pyproject, lockfile, lint, typecheck, test harness, health endpoint, database wiring, auth, CI. Each new repo drifts slightly. Drift compounds into maintenance cost.

Flint packages that setup as a Copier template with a small CLI on top. Generated projects prove they work before the first feature commit. The template is public on GitHub.

Profiles and guarantees

  • Three profiles — minimal, api, and saas — from health-only to PostgreSQL plus JWT auth
  • uv lockfile-first dependency management with Ruff lint/format and Pyright type checking
  • SQLModel, Alembic, and Docker Compose when the profile calls for a database
  • CI workflows that validate generated output on every template change
  • Backend-only scope — no React, GraphQL, or observability vendors to delete on day one
minimal api saas flint new Copier template profile? FastAPI + uv + CI + Postgres + SQLModel + JWT auth + Docker pytest + pyright working backend repo
Scaffold flow
PROFILES = {
    "minimal": Profile(
        name="minimal",
        description="FastAPI, uv, Ruff, Pyright, pytest, settings, health, CI.",
        database="none",
        auth="none",
    ),
    "api": Profile(
        name="api",
        description="Minimal plus PostgreSQL, SQLModel, Alembic, and Docker Compose.",
        database="postgres",
        auth="none",
    ),
}
Flint generated project placeholder
Screenshot placeholder — swap for a generated project tree or CI badge panel.