For developers building AI features
Build modules in Python and YAML while the runtime handles UI effects, provider access, storage, tasks, and document context.
Open runtime for production AI applications
Democr.ai is an open, self-hostable Python runtime for AI software: server-driven UI, tools, document ingestion, model orchestration, sandbox policy, quotas, audit trails, and local-to-cluster deployment.
Build modules in Python and YAML while the runtime handles UI effects, provider access, storage, tasks, and document context.
Give teams one boundary for engines, extractors, tools, quotas, observability, and single-node or clustered orchestration.
Keep AI execution inspectable with sandbox policy, scoped data, token/request limits, and correlated audit evidence.
The problem
The first demo usually proves that the model can help. The hard part is everything around it: UI state, tools, documents, identity, permissions, model routing, cost control, deployment, and evidence that explains what happened.
Agents need to stream text, progress, choices, forms, tables, and actions. Democr.ai makes UI a server-driven protocol, not a custom frontend rewrite for every workflow.
Uploads flow through configured extractors into markdown, chunks, metadata, vector search, and graph context without losing scope.
Application code asks for a model, objective, or capability. The runtime resolves providers, enforces quotas, and can place work across a cluster.
Modules, engines, extractors, tools, agents, and skills use SDK contracts instead of private core internals, with sandbox policy around runtime access.
Actions, tasks, tool calls, model calls, ingestion state, and data mutations can be correlated into inspectable execution flows.
Start local with SQLite and local services. Move storage, media, queues, model execution, and observability outward by configuration.
What it is
Democr.ai is the layer that binds product code, UI, model execution, documents, policy, and observability into one coherent system. Clients render. Modules own behavior. The runtime carries context and governance.
Module authoring
A module defines models, YAML UI, actions, tools, agents, and skills. It does not need to own frontend state management, direct model loading, media transport, or knowledge indexing.
- kind: Row
id: chat_page
stretch: true
children:
- kind: ThreadList
id: chat_thread_list
action:
name: chat.open_thread
- kind: MessageList
id: chat_message_list
capabilities:
- messages.append
- messages.replace
- kind: Composer
id: chat_composer
send_action:
name: chat.start_thread
context:
composer: chat_composer
@action("submit_message")
@permission_required(["chat.write"])
async def submit_message(ctx, session, module_sdk):
turn = create_user_turn(module_sdk, ctx)
stream_id = ctx["stream_id"]
await module_sdk.effects.publish(
stream_id,
module_sdk.effects.ui_collection_append(
"chat_message_list",
"messages",
message_row(turn["message"]),
),
)
await run_chat_orchestration(
module_sdk,
ctx,
turn["conversation"],
turn["message"],
)
Local to distributed
Democr.ai is local-first, but the same runtime shape can point to external infrastructure when a deployment needs shared services or distributed workers.
| Capability | Local setup | Distributed setup |
|---|---|---|
| Relational storage | SQLite for core and module data | Postgres or compatible managed database |
| Media | Local filesystem storage | S3-compatible object storage and optional public delivery endpoint |
| Knowledge graph | Ladybug local graph store | Neo4j-compatible graph backend |
| Vector retrieval | sqlite-vec | Milvus or Pinecone-style vector providers, certification varies by provider |
| Runtime coordination | Local gRPC/IPC services and in-memory response streams | Redis streams, queue-backed engine invocation, node-aware workers |
| Engine governance | Configured model defaults and local context guards | Token/request quotas by user, role, organization, guest, or global scope |
| Observability | SQLite-backed event and audit storage | Postgres, ClickHouse, and optional OTLP export, certification varies by provider |
Provider logos show implementation targets, not certification status. Pinecone and ClickHouse are implemented but still require validation through the current integration pass.
Use cases
Democr.ai is strongest when AI is not a side panel, but part of an application with users, state, permissions, documents, model choices, and operational accountability.
Back-office workflows where agents need forms, actions, document context, permissions, and audit.
Applications that ingest files, preserve extracted content, retrieve scoped knowledge, and expose status.
Teams that need local and remote providers, pluggable storage, sandbox policy, quotas, and logs.
One backend UI definition rendered across desktop, web, Tauri, React variants, and mobile-oriented clients.
Products where modules, tools, agents, engines, and extractors should be installable but bounded.
Environments where AI usage must be inspectable, rate-limited, scoped, and deployable on chosen infrastructure.
Positioning
Democr.ai does not replace model providers, databases, or frontend frameworks as isolated tools. It provides the runtime contract that makes those choices usable inside governed AI applications.
It includes engines, but also UI, modules, tools, documents, storage, tasks, quotas, and audit.
A2UI renders structured application surfaces and effects across clients from backend contracts.
Knowledge ingestion is part of a larger runtime with scoping, extraction status, and application context.
A self-hostable foundation for teams that want AI features to remain understandable and governable.
Project status
Democr.ai is an active open-source runtime. The goal is not to hide complexity behind generated application code, but to put the common layers around agentic software in one place so feature modules stay understandable.