- Purpose: Guillotina core framework and official contrib addons.
- Main stack: Python async API server (ASGI), PostgreSQL, optional Redis.
- Key paths:
guillotina/core framework and contrib packagesguillotina/tests/test suitedocs/source/documentation
- Setup (local venv expected at repo root):
python3 -m venv .venvsource .venv/bin/activatepip install -r requirements.txtpip install -r contrib-requirements.txtpip install -e '.[test]'
- Run local server:
g(usesconfig.yamlby default)
- Run tests:
.venv/bin/pytest guillotina/tests- Targeted:
.venv/bin/pytest guillotina/tests/<path>
- For contrib changes, run focused tests under the touched contrib test folder.
- For API/service changes, verify status codes and response payload contracts.
- Keep docs updated under
docs/source/contrib/when adding contrib features.
- This repo is a framework/library; no direct client deployment from this repo by default.
- Build/release lifecycle should follow package versioning (
VERSION,CHANGELOG.rst).
- Keep compatibility with repository formatting (
blackline length 110). - Avoid wrapper layers when task explicitly requires low-level protocol primitives.
- Never commit credentials or local environment files.
- Update
CHANGELOG.rstfor notable changes. - Record branch name, commit hash, validation output, and task evidence in Ops Tracker.