Scaffold a Full-Stack Project
Section titled “Scaffold a Full-Stack Project”quadkit new project my-app --template full -d ./workspacecd ./workspace/my-appls src/my_app/The full template includes application.yaml, app.py, modules structure, tests, and pyproject.toml.
Create a New Extension Package
Section titled “Create a New Extension Package”quadkit new package my-feature -d ./extensionscd ./extensions/quadkit-my-featureuv syncuv run pytestScaffolds quadkit-my-feature/ with pyproject.toml, src/quadkit/my_feature/, di/provider.py, and a unit test scaffold.
List All Available Generators
Section titled “List All Available Generators”quadkit gen listGenerators are contributed by installed packages. Each entry shows the generator name and description.
Generate a Domain, Service, and Controller
Section titled “Generate a Domain, Service, and Controller”quadkit gen domain Productquadkit gen service ProductServicequadkit gen repository ProductRepositoryquadkit gen controller ProductControllerGenerated files are placed in the project’s src/ tree, following framework conventions.
Run Database Migrations
Section titled “Run Database Migrations”quadkit db init # create initial migrationquadkit db migrate -m "add email field"quadkit db upgrade # apply pendingquadkit db rollback # revert lastquadkit db status # check statequadkit db list # show historyRequires the package that provides the database provider.
Inspect the Runtime
Section titled “Inspect the Runtime”quadkit inspect providers # list DI providersquadkit inspect routes # show HTTP routesquadkit inspect health # run health checksquadkit inspect container # show container bindingsStart an Interactive Shell
Section titled “Start an Interactive Shell”quadkit shell # REPL with app contextquadkit shell --ipython # use IPython if availablequadkit shell --no-app # plain Python REPLThe context-loaded shell provides app, container, config, db, cache, and events.
Run Project Checks as a Pre-Commit Gate
Section titled “Run Project Checks as a Pre-Commit Gate”quadkit test # run pytestquadkit lint # run ruffquadkit project typecheck # run mypyquadkit project run-all # all checks- Use
--jsonflag on any command for machine-readable output - Generators create files relative to the project root; run from the project directory
- Migration files are timestamped and stored in the project’s migrations directory
- The dev server and run command auto-discover
create_app(); usemodule:attrsyntax to override