About this project

Kontiki provides a standardized framework for developing distributed systems, replacing manual broker topology configuration with platform conventions. It utilizes a set of decorators (@http, @rpc, @on_event, @task) to define service entrypoints and interactions over a shared model for identity, routing, and fleet health. Key capabilities include: - Messaging Patterns: Supports synchronous RPC for request/reply and asynchronous events with multiple delivery modes: default (competing consumers), broadcast (all instances), and session-based (pinned instance). - Fleet Management: Includes a registry for heartbeats, exception tracking, and health probes (GET /live/{service_name}), allowing services to signal degraded states. - Operational Tooling: Integrates flow correlation via flow_id for cross-service debugging and integrates with the broader Kontiki suite, including kontiki-scheduler for declarative cron tasks, kontiki-tui for fleet visualization, and kontiki-monitor for alerting. - Development Workflow: Offers a unified model from development to production using merged YAML configurations and a dedicated testing module (kontiki.testing) that mocks the message bus. The framework requires RabbitMQ as the underlying message broker.