kilo (0.2.2)
Installation
pip install --index-url kiloAbout this package
The house Django framework: envelope API idiom, settings defaults, auth (local + 2FA + passkeys + OIDC SSO), and SPA serving.
kilo (Django)
The house Django framework package. Provides:
-
kilo.core— the{success, data}/{success, message, errors}envelope (ok()/err()),TimestampedModel, and theauthenticated_required/operator_requireddecorators. -
kilo.conf—install()writes the shared settings blocks into a project'ssettings.py;env_bool/env_int/env_listhelpers. -
kilo.accounts— email-keyedUser(AppConfig labelaccounts), the two-step login protocol, TOTP/e-mail second factors, passkeys, step-up re-auth, generic OIDC SSO with pre-linked or auto-provision policy, all behindKILO_AUTHfeature flags. -
kilo.front— SPA serving:spa_index, flat/api/me/, auth-checked media, the catch-all URL helper, and the packaged HTML shells (index.html,login.html,login_sso.html,forgot_password.html; projects override by shadowing the template name). -
kilo.timing— request and function timing pushed to Escalator: a middleware, atimeddecorator/context manager, andrecord(). Depends on Django only, so it works in projects that use nothing else from kilo. -
kilo.tenancy+kilo.platform— pooled multi-tenancy (tenant model, host → tenant middleware, scoped managers, membership, export/import) and the cell machine API; opt-in viainstall(tenancy=True).
See the kilo repo's CONVENTIONS.md and docs/ for the full contract.
Tests
pytest --ds=tests.settings_local
pytest --ds=tests.settings_sso