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