Quick Start

Install

pip install pjkm

Set Your Defaults

pjkm defaults --init

Edit ~/.pjkmrc.yaml:

author_name: "Your Name"
author_email: "you@example.com"
license: "MIT"
python_version: "3.13"

Create Your First Project

From a Recipe

pjkm recipe                           # browse 22 recipes
pjkm preview --recipe fastapi-service  # preview the output
pjkm init my-api --recipe fastapi-service

From Groups

pjkm list groups                      # browse 105 groups
pjkm init my-lib -a single-package -g dev -g docs -g coverage

Interactively

pjkm tui

Run It

cd my-api
python -m my_api          # starts uvicorn
# → http://localhost:8000/docs

What’s Inside

my-api/
├── src/my_api/
│   ├── __main__.py       # entry point
│   ├── api/app.py        # FastAPI factory
│   ├── api/routes/       # health, v1
│   ├── core/settings.py  # Pydantic Settings
│   ├── core/database.py  # SQLAlchemy async
│   ├── core/redis.py     # Redis client
│   ├── auth/jwt.py       # JWT tokens
│   └── models/mixins.py  # timestamps, UUIDs
├── tests/
│   ├── conftest.py       # fixtures for app, db, redis
│   ├── test_health.py    # endpoint tests
│   └── test_settings.py  # settings tests
├── .github/workflows/    # 15+ CI/CD workflows
├── Dockerfile            # multi-stage build
├── pyproject.toml        # all deps organized
└── .env.example          # only vars you need

Next Steps

  • Recipes — browse all 22 pre-configured project types

  • Package Groups — understand the 105 available groups

  • Workspace — scaffold multi-service platforms

  • Registry — install community group packs