Modules

Modular by construction.

Each module ships with its own libSQL database, its own ingest path, and its own RBAC scope. Turn them on independently. The dashboard is the only thing they share.

14 live1 coming soonplatformsecuritymonitoringobservabilitydevelopmentmanagementanalyticsdeploymenttools
The stack

Where it sits.

Modules are one layer of a larger composition. Hover the rail to see what each layer is responsible for.

Surface

The portal UI is one entry point. llms.txt and a roadmapped MCP server are the others — every doc page and module lives behind a single addressable surface for humans, agents, and CLIs.

Portal UIllms.txtMCP
Modules

Ten production modules — each with its own libSQL database, its own schema, its own ingest path. Turn them on independently. Same auth, same RBAC, no monolith.

AuditCostsDeploysLogsConfigsPerformanceRepositorySecretsVideoForge
Auth & RBAC

BetterAuth handles sessions, OAuth, magic links, and passkeys. SpiceDB handles relationship-based authorization. Every module reads the same identity; every API call hits the same policy plane.

BetterAuthSpiceDB
Ingest

Everything is a signed POST to /api/ingest. The SDK is a convenience, not a requirement. cURL works. Each event is verified at the edge before it lands in the owning module's database.

/api/ingestSDKcURL
Storage

Each module owns a libSQL file — its own schema, migrations, and audit chain. Shared Postgres backs auth, RBAC, and cross-module workflow state. No single database is the bottleneck.

libSQLPostgres
Runtime

Bun on the server. Docker Compose on a laptop, a VPC, or our cloud. No Kubernetes required, no proprietary control plane — the whole stack starts with one command.

BunDocker ComposeVPCCloud
Observability

What's happening right now.

FinOps

What it costs.

GitOps

What you ship.

Security

Who did what.

security

Audit

Comprehensive audit logging for all admin actions with before/after diffs.

Explore module
Coming Soon

Secrets

1Password-backed secrets management — integration in progress.

Platform

How teams operate the system.

Toolbelt

Power tools that don't fit a category.

How modules compose

Modules ingest events through a shared /api/ingest endpoint. Each event is signed at the client and verified at the edge before it lands in that module's libSQL database. The dashboard reads from those databases and renders the per-module UI.

Adding a module to the registry (modules/modules.json) lights up a new card here automatically. Phase 3 builds the per-module detail pages.