Scaffold archipy app
Scaffold a minimal ArchiPy application package (config, containers stub, domain slice, helpers tree, optional manage.py). Use when starting a new ArchiPy-based service or asking to bootstrap project layout.From its SKILL.md
npx -y skills add SyntaxArc/archipy-plugin --skill scaffold-archipy-appAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.6 KB, as published. Nobody here has run it
Scaffold ArchiPy App
Before writing files
Ask the user for:
- Python package name (e.g.
my_app) - ArchiPy extras to install (e.g.
redis,dependency-injection,postgres,sqlalchemy,fastapi) - Optional: first domain name (default
user)
Steps
- Ensure project uses
uvand Python 3.14+. - Install:
uv add "archipy[<extras>]" - Create layout:
<package>/
├── configs/
│ ├── __init__.py
│ ├── app_config.py # AppConfig(BaseConfig) + set_global
│ └── containers.py # DI stub (if dependency-injection extra)
├── models/
│ ├── __init__.py
│ ├── dtos/<domain>/
│ │ ├── domain/v1/
│ │ └── repository/
│ ├── entities/
│ └── errors/
├── helpers/ # optional — prefer archipy.helpers first
│ ├── __init__.py
│ ├── utils/__init__.py
│ ├── decorators/__init__.py
│ └── interceptors/__init__.py
├── repositories/
│ └── <domain>/
│ ├── adapters/
│ └── <domain>_repository.py
├── logics/
│ └── <domain>/
└── services/
└── <domain>/v1/
manage.py # when fastapi (or HTTP) requested
features/ # optional — /scaffold-bdd
.env.example
- Write
app_config.pywithcustomize()settingself.FASTAPI.PROJECT_NAME(and related defaults) +BaseConfig.set_global. - Add a minimal domain DTO + error subclassing ArchiPy base errors.
- When extras include
fastapi(or user wants HTTP): emit rootmanage.py:create_app()usesAppUtils.create_fastapi_app()and includes domain routers.uvicorn.runbinds fromconfig.FASTAPI(SERVE_HOST,SERVE_PORT,RELOAD,PROXY_HEADERS,FORWARDED_ALLOW_IPS) — never hardcode host/port.
- Document next steps:
/scaffold-domain,/scaffold-adapter,/scaffold-bdd,/scaffold-health-checks,/docs-quickstart.
Constraints
- Double quotes, Google-style docstrings,
X | Ytyping. - No secrets in code; list env keys in
.env.example. - Do not copy ArchiPy library maintainer tooling (graphify, library BDD internals).