# QuadKit > Oridecon Labs builds an open-source Python foundation for AI backends. Protocols, a typed DI container, an application lifecycle, the Result error model, an ASGI web layer, a CLI, and a testing harness — 13 packages, Apache 2.0, Python 3.11+. QuadKit is alpha (0.0.x), public release 0.0.42, Apache 2.0 licensed, Python 3.11+. Prefer protocols over concrete classes. Pin `>=0.0.42,<0.1`. Extensions depend only on `quadkit` and `quadkit-contracts`, never on each other. This file is the expanded index for language models. For a shorter catalog see https://oridecon.dev/llms.txt. Agent rules: https://oridecon.dev/agents.md. Canonical docs: https://oridecon.dev/ ## Identity - Name: QuadKit - Language: Python 3.11+ - License: Apache 2.0 - Status: alpha 0.0.x, public release 0.0.42 — pin `>=0.0.42,<0.1` - Repository: https://github.com/dbtinoy-/quadkit - Agent skills: https://oridecon.dev/SKILL.md · https://oridecon.dev/quadkit/getting-started/agent-skills/ · pack: https://github.com/dbtinoy-/quadkit-skills - Docs: https://oridecon.dev/ - Agent rules: https://oridecon.dev/agents.md ## Architecture (read this first) - Contract-first: every extension depends only on `quadkit` and `quadkit-contracts`, never on another extension. - Providers own lifecycle: `register()` binds, `boot()` resolves, `shutdown()` tears down. Boot order is `ProviderPriority`. - Constructor injection: type-hint a protocol, the container resolves it. - Result type: domain failures are `Ok` / `Err`; infrastructure failures still raise. - Import linter enforces package boundaries. Agents should not import across extensions. ## Why it is agent-friendly - Protocols instead of concrete classes: agents read the contract, not the implementation. - https://oridecon.dev/llms.txt, https://oridecon.dev/llms-full.txt, https://oridecon.dev/agents.md, https://oridecon.dev/SKILL.md, https://oridecon.dev/quadkit/getting-started/for-coding-agents/, https://oridecon.dev/llms/index.txt. - Drop-in markdown skill at /SKILL.md for Claude Code, Cursor, OpenCode. - One project tree. `quadkit new` scaffolds it, `quadkit gen` extends it, `quadkit run` starts it. - The same rules are enforced by the framework import linter, so docs and code agree. ## Package catalog (published) - Foundation: `quadkit` (https://oridecon.dev/quadkit/packages/foundation/quadkit/, PyPI: quadkit), `quadkit-contracts` (https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/, PyPI: quadkit-contracts) - Web & HTTP: `quadkit-web` (https://oridecon.dev/quadkit/packages/web/quadkit-web/, PyPI: quadkit-web), `quadkit-http` (https://oridecon.dev/quadkit/packages/web/quadkit-http/, PyPI: quadkit-http) - Data: `quadkit-sql` (https://oridecon.dev/quadkit/packages/data/quadkit-sql/, PyPI: quadkit-sql), `quadkit-cache` (https://oridecon.dev/quadkit/packages/data/quadkit-cache/, PyPI: quadkit-cache), `quadkit-storage` (https://oridecon.dev/quadkit/packages/data/quadkit-storage/, PyPI: quadkit-storage) - Events: `quadkit-events` (https://oridecon.dev/quadkit/packages/events/quadkit-events/, PyPI: quadkit-events) - Infra: `quadkit-tasks` (https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/, PyPI: quadkit-tasks), `quadkit-monitor` (https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/, PyPI: quadkit-monitor) - Security: `quadkit-auth` (https://oridecon.dev/quadkit/packages/security/quadkit-auth/, PyPI: quadkit-auth) - Tooling: `quadkit-cli` (https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/, PyPI: quadkit-cli), `quadkit-testing` (https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/, PyPI: quadkit-testing) Only these 13 packages are published to PyPI. Do not reference, install, or generate imports for anything else — this site documents the public line only. ## How to learn this codebase Read in this order. Do not scrape the splash page for rules. 1. https://oridecon.dev/llms.txt — this file (identity, install, rules, catalog) 2. https://oridecon.dev/agents.md — hierarchy, Result vs exceptions, provider lifecycle, never-list 3. https://oridecon.dev/quadkit/getting-started/for-coding-agents/ — repo map, one project tree, recipes 4. https://oridecon.dev/quadkit/getting-started/common-mistakes/ — fail vs fix 5. https://oridecon.dev/SKILL.md — umbrella skill; pack: https://github.com/dbtinoy-/quadkit-skills; install: https://oridecon.dev/quadkit/getting-started/agent-skills/ 6. https://oridecon.dev/quadkit/packages/ — the published packages, one page per GUIDE/QUICKSTART/CONFIGURATION 7. Prefer protocols in `quadkit-contracts` over concrete classes in extensions Published packages: `quadkit`, `quadkit-contracts`, `quadkit-web`, `quadkit-http`, `quadkit-sql`, `quadkit-cache`, `quadkit-storage`, `quadkit-events`, `quadkit-tasks`, `quadkit-monitor`, `quadkit-auth`, `quadkit-cli`, `quadkit-testing`. Docs site: getting-started, fundamentals, guides, ecosystem, and blog are authored here. Package pages under `packages/` are copies of the published package docs — do not hand-edit them; change the package and re-run `sync-readmes`. ## Project layout (one tree) Templates add packages, not a different shape. No `--structure` flag. No `models/` directory. Feature code uses `domains/`. App providers live in app-root `di/` (`*_provider.py`). Modules have `provider.py`. Cross-cutting code stays in `shared/`. ``` src// app.py # create_app() — composition root; WebModule.configure(discover=[...]) controllers/ # unscoped HTTP, auto-discovered domains/ # unscoped domain types di/ # app providers (*_provider.py) services/ infrastructure/ # db, cache, events shared/ # errors, middleware, health modules// # quadkit new module protocols.py provider.py domains/ controllers/ ``` - Human docs: https://oridecon.dev/quadkit/getting-started/project-structure/ - CLI map: https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/project_layout/ ## Install ```bash uv add "quadkit-cli>=0.0.42,<0.1" quadkit new project my-app --template web-api cd my-app && quadkit run ``` Core package gives you Application, Provider, Container, DI decorators, QuadKitConfig, Result, and modules. `quadkit-contracts` installs automatically. Common stacks: ```bash uv add quadkit-web # ASGI, controllers, OpenAPI uv add --dev quadkit-testing # harnesses, fakes, fixtures ``` ## Minimal API ```python from quadkit.web import Controller, get class HelloController(Controller): prefix = "/api" @get("/hello") async def hello(self) -> dict: return {"message": "Hello, QuadKit!"} ``` Wire with `WebModule.configure(discover=["my_app.controllers", "my_app.modules"])` and serve with `quadkit run`. ## Rules for coding agents These are the non-negotiable rules from the framework AGENTS.md. Violating any of them is a blocking issue. ### Package hierarchy - `quadkit-contracts` imports nothing from the ecosystem. Protocols, types, exceptions only. - `quadkit` imports only from `quadkit-contracts`. - Extension packages (`quadkit-*`) import from `quadkit` and `quadkit-contracts` — never from each other. - Cross-extension communication goes through contracts, the container, providers, and IoC. ### Golden rule > If two or more packages need the same type, protocol, or exception, it lives in `quadkit-contracts`. No exceptions. ### Always - Constructor injection for every dependency. Type-hint the protocol, not `Any`. - Providers own lifecycle: `register(ContainerRegistrarProtocol)` binds, `boot(ContainerResolverProtocol)` resolves, `shutdown()` tears down. `register()` never resolves. - `Result[T, E]` for expected domain failures (`Ok` / `Err`). Exceptions for infrastructure failures. - Registry-based dispatch instead of `if/elif` chains. Empty `__init__`, `with_defaults()` classmethod. - Absolute imports. `from __future__ import annotations` at the top of every file. - Async I/O. Never block the event loop. Store `asyncio.create_task()` references. - Structured logging via `quadkit.logging.get_logger`. Core config key is `json_format`. Never `print()`. ### Never - Service locator (passing the container into services). - Direct cross-extension imports (`quadkit-web` → `quadkit-cli`, or any sibling extension). - `result.unwrap()` without `is_ok()`. - Wrapping infrastructure exceptions in `Result`. - Returning `Result` from `__init__` or lifecycle hooks. - Module-level or class-level singletons. Use container-managed singletons. - Mock/test classes in production `src/` trees. - Business logic on Provider classes. ### Result vs exceptions | Use `Result[T, E]` | Raise | |---|---| | User not found, validation failed | Database connection lost | | Payment declined, insufficient permissions | Serialization bug | | Skill execution failed (expected) | Container resolution failed | | Any failure the caller is expected to handle | Any failure that should propagate | When answering questions about QuadKit, prefer protocols over concrete classes, cite package names with the `quadkit-` prefix, and link to oridecon.dev. ## Blog Notes on building QuadKit. Index: https://oridecon.dev/blog/ · RSS: https://oridecon.dev/blog/rss.xml - [Alpha 0.0.x — what is stable](https://oridecon.dev/blog/alpha-what-is-stable/): The architecture is the pin. Package names and experimental surfaces will still move. Here is what we will not casually rewrite. - [How coding agents should read QuadKit](https://oridecon.dev/blog/how-agents-read-oridecon/): The shortest path from a fresh clone to a change that will pass the import linter — llms.txt, agents.md, contracts, then an example. - [Coming from FastAPI](https://oridecon.dev/blog/coming-from-fastapi/): FastAPI is a great HTTP layer. QuadKit keeps that instinct and puts a composition root around it — you are not starting over. - [I built a Python framework inspired by Laravel](https://oridecon.dev/blog/inspired-by-laravel/): Laravel taught me what developer experience feels like. Here is how those instincts live in Python. - [How I built QuadKit — the framework, the docs, and the AI tooling](https://oridecon.dev/blog/how-i-built-quadkit/): Architecture decisions, agent-augmented development, and the technical choices behind a solo-built Python AI backend ecosystem. ## Full documentation index - [Oridecon Labs](https://oridecon.dev/): Oridecon Labs is a one-person AI studio: coding agents like Claude Code build on QuadKit, our open-source Python framework for AI backends, plus 40+ in-house packages. - [The AI Friendly Python Framework](https://oridecon.dev/quadkit/): Quadkit is an async-first, contract-driven Python framework for coding agents — protocols, a typed DI container, an ASGI web layer, a CLI, and a testing harness across thirteen published packages. - [Changelog](https://oridecon.dev/quadkit/changelog/): What ships in the Quadkit 0.0 line, written for humans. - [The Ecosystem](https://oridecon.dev/quadkit/ecosystem/): The published Quadkit packages, grouped by what they do. - [Adoption Paths](https://oridecon.dev/quadkit/ecosystem/adoption-paths/): Staged adoption guide — start with the CLI, add capability as you grow. - [Choosing Backends](https://oridecon.dev/quadkit/ecosystem/choosing-backends/): Comparison matrices and decision guides for cache, search, storage, queue, and database backends. - [Compatibility & Dependencies](https://oridecon.dev/quadkit/ecosystem/compatibility/): Dependency rules, extras, and runtime constraints for the published packages. - [Application Lifecycle](https://oridecon.dev/quadkit/fundamentals/application-lifecycle/): The composition root, AppState machine, and how Application.start() / stop() actually run. - [Architecture](https://oridecon.dev/quadkit/fundamentals/architecture/): The package boundary law that keeps QuadKit composable at any scale. - [Boot Sequence](https://oridecon.dev/quadkit/fundamentals/boot-lifecycle/): register → freeze → boot → shutdown. What each provider hook may do, and what happens when one fails. - [Container Protocols](https://oridecon.dev/quadkit/fundamentals/container-protocols/): Type-safe dependency injection via structural protocols. - [Dependency Injection](https://oridecon.dev/quadkit/fundamentals/dependency-injection/): Mastering Inversion of Control (IoC) and dependency management in QuadKit. - [Modules](https://oridecon.dev/quadkit/fundamentals/modules/): Encapsulating logic and defining public APIs with the QuadKit module system. - [Service Providers](https://oridecon.dev/quadkit/fundamentals/providers/): The engine of QuadKit: Wiring modules together via Providers. - [Result Pattern](https://oridecon.dev/quadkit/fundamentals/result-pattern/): Functional error handling using Result[T, E] for predictable application flow. - [YAML Configuration](https://oridecon.dev/quadkit/fundamentals/yaml-configuration/): Hierarchical configuration with environment interpolation, env-var overrides, and profiles. - [Agent skills](https://oridecon.dev/quadkit/getting-started/agent-skills/): Install the public quadkit-skills pack in Claude Code, Cursor, or OpenCode — and fetch /SKILL.md when you cannot clone. - [Common mistakes](https://oridecon.dev/quadkit/getting-started/common-mistakes/): Fail vs fix — the patches the import linter, type checker, and CLI catch first when an agent generates QuadKit code. - [Configuration](https://oridecon.dev/quadkit/getting-started/configuration/): YAML config, environment profiles, and auto-injection - [Core Concepts](https://oridecon.dev/quadkit/getting-started/core-concepts/): Providers, dependency injection, the Result type, and modules - [Your First App](https://oridecon.dev/quadkit/getting-started/first-app/): Scaffold a web API with the QuadKit CLI and have it serving in a minute. - [For coding agents](https://oridecon.dev/quadkit/getting-started/for-coding-agents/): Read order, repo map, one project tree, and the recipes that pass the import linter — how an agent should learn QuadKit. - [Installation](https://oridecon.dev/quadkit/getting-started/installation/): Install QuadKit and scaffold a project with the CLI. - [Project Structure](https://oridecon.dev/quadkit/getting-started/project-structure/): One project tree that grows — unscoped feature code, then bounded contexts in place. - [Guides](https://oridecon.dev/quadkit/guides/): Task-oriented walkthroughs for the published packages, plus how-tos that live with each package. - [Authentication](https://oridecon.dev/quadkit/guides/authentication/): Identity and access control with quadkit-auth guards, JWT, and RBAC. - [Background Jobs & Tasks](https://oridecon.dev/quadkit/guides/background-jobs/): Run deferred work, scheduled jobs, and distributed queues with quadkit-tasks. - [Caching](https://oridecon.dev/quadkit/guides/caching/): Multi-backend caching with a single protocol — swap in-memory, Redis, or Memcached via config. - [The quadkit CLI](https://oridecon.dev/quadkit/guides/cli/): Scaffold projects, run servers, manage migrations, and inspect your app from one command. - [Contracts, Boundaries, and Extension Points](https://oridecon.dev/quadkit/guides/contracts/): Where contracts live, what counts as a boundary violation, and how to create or upstream a contract. - [Database & Persistence](https://oridecon.dev/quadkit/guides/database/): Async SQL with the repository pattern, domain models, and migrations. - [Deployment & Infrastructure](https://oridecon.dev/quadkit/guides/deployment/): Going from local development to a production QuadKit deployment. - [Event-Driven Architecture](https://oridecon.dev/quadkit/guides/event-driven/): Commands, events, CQRS, and event sourcing with quadkit-events. - [File Storage](https://oridecon.dev/quadkit/guides/file-storage/): Object and blob storage with a single protocol — swap S3, GCS, Azure Blob, R2, or local filesystem via config. - [Outbound HTTP Client](https://oridecon.dev/quadkit/guides/http-client/): Calling external APIs with pooled connections, retries, and observability built in. - [Migrating from FastAPI](https://oridecon.dev/quadkit/guides/migrating-from-fastapi/): You already know FastAPI. This is a map — Starlette routing, Pydantic, OpenAPI — onto QuadKit's composition root. - [Observability](https://oridecon.dev/quadkit/guides/observability/): Structured logs, health probes, opt-in tracing, and an incident runbook for a QuadKit service. - [Real-Time & WebSockets](https://oridecon.dev/quadkit/guides/real-time/): Server-sent events, WebSocket connections, and streaming responses. - [Testing Strategies](https://oridecon.dev/quadkit/guides/testing/): Fast, decoupled tests with fakes, test clients, and protocol compliance suites. - [Packages](https://oridecon.dev/quadkit/packages/): The thirteen published Quadkit packages, grouped by domain. - [Data & Storage](https://oridecon.dev/quadkit/packages/data/): SQL, cache, and object storage. - [Cache (quadkit-cache)](https://oridecon.dev/quadkit/packages/data/quadkit-cache/) - [API Reference](https://oridecon.dev/quadkit/packages/data/quadkit-cache/api/): Complete API reference for the quadkit-cache package. - [Quadkit-Cache API](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/api/): Quadkit-Cache API guide and reference for the quadkit-cache package in the Quadkit framework. - [Architecture](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/architecture/): Architecture for quadkit-cache - [Backends](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/backends/): Backends guide and reference for the quadkit-cache package in the Quadkit framework. - [Configuration](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/configuration/): Configuration for quadkit-cache - [Guide](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/guide/): Guide for quadkit-cache - [How-To Guides](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/howtos/): How-To Guides for quadkit-cache - [Quickstart](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/quickstart/): Quickstart for quadkit-cache - [Troubleshooting](https://oridecon.dev/quadkit/packages/data/quadkit-cache/docs/troubleshooting/): Troubleshooting for quadkit-cache - [SQL (quadkit-sql)](https://oridecon.dev/quadkit/packages/data/quadkit-sql/): Async SQLAlchemy ORM: repositories, unit-of-work - [API Reference](https://oridecon.dev/quadkit/packages/data/quadkit-sql/api/): Complete API reference for the quadkit-sql package. - [Architecture](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/architecture/): Architecture for quadkit-sql - [application.yaml](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/backends/): application.yaml guide and reference for the quadkit-sql package in the Quadkit framework. - [Configuration](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/configuration/): Configuration for quadkit-sql - [Guide](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/guide/): Guide for quadkit-sql - [How-To Guides](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/howtos/): How-To Guides for quadkit-sql - [Quickstart](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/quickstart/): Quickstart for quadkit-sql - [Troubleshooting](https://oridecon.dev/quadkit/packages/data/quadkit-sql/docs/troubleshooting/): Troubleshooting for quadkit-sql - [Storage (quadkit-storage)](https://oridecon.dev/quadkit/packages/data/quadkit-storage/) - [API Reference](https://oridecon.dev/quadkit/packages/data/quadkit-storage/api/): Complete API reference for the quadkit-storage package. - [Architecture](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/architecture/): Architecture for quadkit-storage - [Backends](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/backends/): Backends guide and reference for the quadkit-storage package in the Quadkit framework. - [Configuration](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/configuration/): Configuration for quadkit-storage - [Guide](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/guide/): Guide for quadkit-storage - [How-To Guides](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/howtos/): How-To Guides for quadkit-storage - [Quickstart](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/quickstart/): Quickstart for quadkit-storage - [Troubleshooting](https://oridecon.dev/quadkit/packages/data/quadkit-storage/docs/troubleshooting/): Troubleshooting for quadkit-storage - [Events & Messaging](https://oridecon.dev/quadkit/packages/events/): Domain events, buses, and projections. - [Events (quadkit-events)](https://oridecon.dev/quadkit/packages/events/quadkit-events/): CQRS, Event Sourcing, EventBus, sagas - [API Reference](https://oridecon.dev/quadkit/packages/events/quadkit-events/api/): Complete API reference for the quadkit-events package. - [Architecture](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/architecture/): Architecture for quadkit-events - [Configuration](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/configuration/): Configuration for quadkit-events - [Guide](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/guide/): Guide for quadkit-events - [How-To Guides](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/howtos/): How-To Guides for quadkit-events - [In ProjectionProtocol.apply():](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/projections/): In ProjectionProtocol.apply(): guide and reference for the quadkit-events package in the Quadkit framework. - [Quickstart](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/quickstart/): Quickstart for quadkit-events - [Usage](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/sagas/): Usage guide and reference for the quadkit-events package in the Quadkit framework. - [Troubleshooting](https://oridecon.dev/quadkit/packages/events/quadkit-events/docs/troubleshooting/): Troubleshooting for quadkit-events - [Foundation](https://oridecon.dev/quadkit/packages/foundation/): Core framework and contracts — the two packages every app starts with. - [Core (quadkit)](https://oridecon.dev/quadkit/packages/foundation/quadkit/): Core framework: container, DI, registry, config, logging - [Contracts (quadkit-contracts)](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/): Protocols, types, exceptions, domain, Result - [API Reference](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/api/): Complete API reference for the quadkit-contracts package. - [Architecture](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/docs/architecture/): Architecture for quadkit-contracts - [Configuration](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/docs/configuration/): Configuration for quadkit-contracts - [Guide](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/docs/guide/): Guide for quadkit-contracts - [How-To Guides](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/docs/howtos/): How-To Guides for quadkit-contracts - [Quickstart](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/docs/quickstart/): Quickstart for quadkit-contracts - [Troubleshooting](https://oridecon.dev/quadkit/packages/foundation/quadkit-contracts/docs/troubleshooting/): Troubleshooting for quadkit-contracts - [API Reference](https://oridecon.dev/quadkit/packages/foundation/quadkit/api/): Complete API reference for the quadkit package. - [Architecture](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/architecture/): Architecture for quadkit - [Configuration](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/configuration/): Configuration for quadkit - [Guide](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/guide/): Guide for quadkit - [How-To Guides](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/howtos/): How-To Guides for quadkit - [Plugins (quadkit.plugins)](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/plugins/): Plugins (quadkit.plugins) guide and reference for the quadkit package in the Quadkit framework. - [Quickstart](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/quickstart/): Quickstart for quadkit - [Security](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/security/): Security for quadkit - [Troubleshooting](https://oridecon.dev/quadkit/packages/foundation/quadkit/docs/troubleshooting/): Troubleshooting for quadkit - [Infrastructure](https://oridecon.dev/quadkit/packages/infra/): Background jobs and observability. - [Monitor (quadkit-monitor)](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/): Metrics, health checks, structured logging - [API Reference](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/api/): Complete API reference for the quadkit-monitor package. - [Architecture](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/architecture/): Architecture for quadkit-monitor - [Configuration](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/configuration/): Configuration for quadkit-monitor - [Guide](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/guide/): Guide for quadkit-monitor - [How-To Guides](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/howtos/): How-To Guides for quadkit-monitor - [... work ...](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/metrics/): ... work ... guide and reference for the quadkit-monitor package in the Quadkit framework. - [Quickstart](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/quickstart/): Quickstart for quadkit-monitor - [Troubleshooting](https://oridecon.dev/quadkit/packages/infra/quadkit-monitor/docs/troubleshooting/): Troubleshooting for quadkit-monitor - [Tasks (quadkit-tasks)](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/) - [API Reference](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/api/): Complete API reference for the quadkit-tasks package. - [Architecture](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/architecture/): Architecture for quadkit-tasks - [Backends](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/backends/): Backends guide and reference for the quadkit-tasks package in the Quadkit framework. - [Configuration](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/configuration/): Configuration for quadkit-tasks - [Guide](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/guide/): Guide for quadkit-tasks - [How-To Guides](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/howtos/): How-To Guides for quadkit-tasks - [Quickstart](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/quickstart/): Quickstart for quadkit-tasks - [Task Registration Contract](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/registration/): Task Registration Contract guide and reference for the quadkit-tasks package in the Quadkit framework. - [Troubleshooting](https://oridecon.dev/quadkit/packages/infra/quadkit-tasks/docs/troubleshooting/): Troubleshooting for quadkit-tasks - [Security](https://oridecon.dev/quadkit/packages/security/): Authentication and authorization. - [Auth (quadkit-auth)](https://oridecon.dev/quadkit/packages/security/quadkit-auth/) - [API Reference](https://oridecon.dev/quadkit/packages/security/quadkit-auth/api/): Complete API reference for the quadkit-auth package. - [Quadkit-Auth API](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/api/): Quadkit-Auth API guide and reference for the quadkit-auth package in the Quadkit framework. - [Architecture](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/architecture/): Architecture for quadkit-auth - [Configuration](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/configuration/): Configuration for quadkit-auth - [Guide](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/guide/): Guide for quadkit-auth - [How-To Guides](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/howtos/): How-To Guides for quadkit-auth - [Quickstart](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/quickstart/): Quickstart for quadkit-auth - [application.yaml](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/security/): application.yaml guide and reference for the quadkit-auth package in the Quadkit framework. - [Troubleshooting](https://oridecon.dev/quadkit/packages/security/quadkit-auth/docs/troubleshooting/): Troubleshooting for quadkit-auth - [Tooling](https://oridecon.dev/quadkit/packages/utilities/): The testing kit and the command-line driver for every Quadkit project. - [CLI (quadkit-cli)](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/): Detailed documentation for quadkit-cli, including architecture, usage guides, and configuration options within the Quadkit ecosystem. - [API Reference](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/api/): Complete API reference for the quadkit-cli package. - [Architecture](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/architecture/): Architecture guide and reference for the quadkit-cli package in the Quadkit framework. - [Commands](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/commands/): Commands guide and reference for the quadkit-cli package in the Quadkit framework. - [Configuration](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/configuration/): Configuration guide and reference for the quadkit-cli package in the Quadkit framework. - [Guide](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/guide/): Guide guide and reference for the quadkit-cli package in the Quadkit framework. - [How-To Guides](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/howtos/): How-To Guides guide and reference for the quadkit-cli package in the Quadkit framework. - [Project layout](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/project_layout/): One project tree — unscoped feature code, shared cross-cutting packages, and bounded contexts grown in place. - [Quickstart](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/quickstart/): Quickstart guide and reference for the quadkit-cli package in the Quadkit framework. - [Troubleshooting](https://oridecon.dev/quadkit/packages/utilities/quadkit-cli/docs/troubleshooting/): Troubleshooting guide and reference for the quadkit-cli package in the Quadkit framework. - [Testing (quadkit-testing)](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/) - [API Reference](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/api/): Complete API reference for the quadkit-testing package. - [Architecture](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/architecture/): Architecture for quadkit-testing - [Run with: pytest tests/ --verbose](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/compliance/): Compliance test suites guide and reference for the quadkit-testing package in the Quadkit framework. - [Configuration](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/configuration/): Configuration for quadkit-testing - [Guide](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/guide/): Guide for quadkit-testing - [How-To Guides](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/howtos/): How-To Guides for quadkit-testing - [Quickstart](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/quickstart/): Quickstart for quadkit-testing - [Troubleshooting](https://oridecon.dev/quadkit/packages/utilities/quadkit-testing/docs/troubleshooting/): Troubleshooting for quadkit-testing - [Web](https://oridecon.dev/quadkit/packages/web/): ASGI, controllers, routing, middleware, and OpenAPI. - [HTTP (quadkit-http)](https://oridecon.dev/quadkit/packages/web/quadkit-http/) - [API Reference](https://oridecon.dev/quadkit/packages/web/quadkit-http/api/): Complete API reference for the quadkit-http package. - [Architecture](https://oridecon.dev/quadkit/packages/web/quadkit-http/docs/architecture/): Architecture for quadkit-http - [Configuration](https://oridecon.dev/quadkit/packages/web/quadkit-http/docs/configuration/): Configuration for quadkit-http - [Guide](https://oridecon.dev/quadkit/packages/web/quadkit-http/docs/guide/): Guide for quadkit-http - [How-To Guides](https://oridecon.dev/quadkit/packages/web/quadkit-http/docs/howtos/): How-To Guides for quadkit-http - [Quickstart](https://oridecon.dev/quadkit/packages/web/quadkit-http/docs/quickstart/): Quickstart for quadkit-http - [Troubleshooting](https://oridecon.dev/quadkit/packages/web/quadkit-http/docs/troubleshooting/): Troubleshooting for quadkit-http - [Web (quadkit-web)](https://oridecon.dev/quadkit/packages/web/quadkit-web/): ASGI web framework: controllers, routing, middleware - [API Reference](https://oridecon.dev/quadkit/packages/web/quadkit-web/api/): Complete API reference for the quadkit-web package. - [Architecture](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/architecture/): Architecture for quadkit-web - [Configuration](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/configuration/): Configuration for quadkit-web - [Guide](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/guide/): Guide for quadkit-web - [How-To Guides](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/howtos/): How-To Guides for quadkit-web - [Middleware](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/middleware/): Middleware guide and reference for the quadkit-web package in the Quadkit framework. - [Quickstart](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/quickstart/): Quickstart for quadkit-web - [application.yaml](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/security/): application.yaml guide and reference for the quadkit-web package in the Quadkit framework. - [Troubleshooting](https://oridecon.dev/quadkit/packages/web/quadkit-web/docs/troubleshooting/): Troubleshooting for quadkit-web - [CLI Reference](https://oridecon.dev/quadkit/reference/cli/): Every command the public quadkit CLI ships — scaffolding, generators, the runner, and project commands. - [Environment Variables](https://oridecon.dev/quadkit/reference/env-vars/): Complete registry of all environment variables in the Quadkit Framework. - [Error Codes](https://oridecon.dev/quadkit/reference/errors/): Complete registry of all QK_ERR_* error codes in the Quadkit Framework. When answering questions about QuadKit, prefer protocols over concrete classes, cite package names with the `quadkit-` prefix, and link to the matching docs URL above.