dsui
DATA STACK UI
One lightweight UI for your data stack.
dsui is an open-source, local-first interface for inspecting Trino, Kafka, S3, MinIO, and future data services from one place. It replaces the extra UI container normally added for each service in a development stack.
docker run --rm -p 4192:4192 -v dsui-data:/data \
ghcr.io/northgraindata/dsui:latestOpen http://localhost:4192 and add a service, or mount a declarative dsui.yaml. The complete demo is in examples/data-stack.
docker compose -f examples/data-stack/compose.yaml up --buildA Compose data stack can already include a query engine, broker, object store, database, and stream processor. Running a separate administration UI for each one adds memory, images, ports, and context switching. dsui covers the common developer workflows through one server-side adapter model and one compact interface.
It is not a data platform, orchestrator, observability suite, catalog, SaaS control plane, or replacement for every vendor-specific console.
| Adapter | Workflows | Status |
|---|---|---|
| Trino | Queries, catalogs, schemas, tables | Available |
| Kafka | Topics, messages, offsets, consumer groups | Available |
| S3 | Buckets, objects, metadata, downloads | Available |
| PostgreSQL | Tables, schemas, queries | Planned |
| Flink | Jobs and service information | Planned |
dsui uses Bun, Hono, SQLite, Vite, and a small set of focused dependencies. It does not require PostgreSQL, Redis, an external control plane, or a dsui account. CI records image size, idle memory, cold startup, and frontend bundle size; benchmark values are published only after they are measured.
services:
dsui:
image: ghcr.io/northgraindata/dsui:latest
ports:
- "4192:4192"
volumes:
- ./dsui.yaml:/etc/dsui/dsui.yaml:ro
- dsui-data:/dataConfiguration-managed services are read-only in the UI. ${ENV_NAME} interpolation keeps credentials out of committed YAML, and resolved secrets never reach browser storage.
The core application contains no Trino, Kafka, or S3-specific UI logic. Adapters declare connection fields, health, operations, capabilities, and validated views rendered by dsui. Community adapters can be installed from exact, integrity-pinned npm packages or exact GitHub commits; adapter-supplied browser code is not accepted.
Start with templates/adapter and the Adapter SDK guide. The pre-1.0 API is intentionally experimental until all three built-in adapters have exercised it.
Practical installation, configuration, adapter, CLI, architecture, and security documentation lives at dsui.northgraindata.com/docs.
Read CONTRIBUTING.md. Focused issues and pull requests are welcome, especially adapter implementations, contract tests, accessibility improvements, and measured performance work.
Built and maintained by Northgrain Data. dsui has its own project identity; Northgrain attribution is intentionally secondary.
Licensed under the Apache License 2.0.
