discover · compare · collections · requirements · contribute · feed · watching · stats · help with your tokens
northgraindata/dsui · source
Snapshot 0 · 2026-11-04T12:47:28Z · TypeScript · Apache-2.0
Content fingerprint
1687f5bb23d5a95fa7d7642ba65ab2b81420765fec9912e56268b4fe1470f0c5GitHub description at capture
The AI-native control plane for your data stack.
README at capture

[Website](https://dsui.northgraindata.com) · [Live Demo](https://dsui.northgraindata.com/demo) · [Documentation](https://dsui.northgraindata.com/docs) · [Discord](https://discord.gg/6vgtDbVggc)
# The AI-native control plane for your data stack.
Connect your data tools and manage them from one place. Explore your infrastructure, run operations, and work across services with AI that understands your stack.


## One control plane across your stack
Connect tools through adapters, run service operations, and use DSUI Agent to work across your connected stack.
Extend the platform with plugins and SDKs.
DSUI does not try to replace the tools you already run.
Airflow stays the best place for Airflow, and your warehouse keeps its own console.
DSUI is the one workspace you keep open for the everyday operations across all of them:
- Check a failed DAG or a failing dbt run.
- Inspect a table or run a query.
- See whether a service is healthy.
- Ask DSUI Agent to investigate across several services in one conversation.
## DSUI Agent
DSUI Agent is a chat inside the workspace.
It can inspect the services you have access to and help investigate an issue across them, using what each adapter exposes.
It runs on the model provider you configure (OpenAI, Anthropic, Gateway or OpenRouter).
Read the [plugin README](./packages/plugin-ai-agent/README.md) for setup.
## Get started
Run DSUI on your host for local development and project files:
```bash
npx @northgraindata/dsui
```
DSUI loads `./dsui.yaml` when present and keeps local state in
`~/.local/share/dsui`.
The first local run also generates `~/.local/share/dsui/.master-key` for
encrypting connections added through the UI. Keep it with the local data
directory; set `DSUI_MASTER_KEY` explicitly for controlled deployments.
## Docker deployment
Use Docker when you want an isolated, reproducible deployment.
It connects to services reachable from the container.
If an adapter requires an executable or runtime, provide it in the image used to run DSUI.
### Example: a DuckDB workspace
Configure a DuckDB database in `dsui.yaml`:
```yaml
adapters:
duckdb:
source: git
repository: "git+https://github.com/northgraindata/dsui"
ref: main
path: packages/adapter-duckdb
services:
- id: warehouse
adapter: duckdb
name: Analytics warehouse
connection:
method: file
path: /data/warehouse.duckdb
```
Run DSUI alongside it in `docker-compose.yml`:
```yaml
services:
dsui:
image: ghcr.io/northgraindata/dsui:latest
ports:
- "4192:4192"
environment:
DSUI_CONFIG: /etc/dsui/dsui.yaml
volumes:
- ./dsui.yaml:/etc/dsui/dsui.yaml:ro
- dsui-data:/data
volumes:
dsui-data:
```
Start the workspace:
```bash
docker compose up -d
```
Open [http://localhost:4192](http://localhost:4192). DSUI downloads and builds the configured DuckDB adapter, then opens the database file in the persistent `/data` volume. Add your other services to the same `dsui.yaml` and Compose network.
## Adapters
Connect Apache Airflow, dbt, PostgreSQL, ClickHouse, S3-compatible storage such as MinIO, and DuckDB through adapters that bring service-specific capabilities into DSUI.
| | | | | | | |
| ----------------------------------------------------- | --------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------- | ------------------------------------------------- | ---------------------------------------------- | ----------------------------------------------------- |
| <img src="./apps/site/public/assets/logos/airflow.svg" width="56" alt="Apache Airflow" /> | <img src="./apps/site/public/assets/logos/dbt.png" width="56" alt="dbt" /> | <img src="./apps/site/public/assets/logos/postgresql.svg" width="56" alt="PostgreSQL" /> | <img src="./apps/site/public/assets/logos/s3.svg" width="56" alt="Amazon S3" /> | <img src="./apps/site/public/assets/logos/minio.svg" width="56" alt="MinIO" /> | <img src="./apps/site/public/assets/logos/duckdb.svg" width="56" alt="DuckDB" /> | <img src="./apps/site/public/assets/logos/clickhouse.png" width="56" alt="ClickHouse" /> |
**Need another tool?**
The TypeScript [Adapter SDK](https://dsui.northgraindata.com/docs/adapter-sdk/overview) lets you build custom integrations for internal services and other tools.
## Plugins and custom capabilities
Install plugins to extend DSUI beyond connected services. Use the TypeScript [Plugin SDK](https://dsui.northgraindata.com/docs/plugin-sdk/overview) to build custom pages, actions, and workflows tailored to your infrastructure.
## Self-hosted deployment
The official container keeps its local state in `/data` and needs no separate database.
It is published through GitHub Container Registry:
```bash
docker pull ghcr.io/northgraindata/dsui:latest
```
### Telemetry
A self-hosted DSUI sends a small anonymous usage event when it starts and once a day.
It contains versions, platform and counts of services per adapter type, never hostnames, URLs, credentials or queries.
It is on by default and the server says so at startup.
Turn it off with `DSUI_TELEMETRY=off` or `DO_NOT_TRACK=1`.
The [telemetry page](https://dsui.northgraindata.com/docs/telemetry) lists every field.
## DSUI Cloud
Prefer not to run it yourself?
DSUI Cloud is the managed version: we handle hosting, upgrades and backups, with Pro plugins and AI usage included.
It can also run in your own cloud.
[Talk to us](https://github.com/northgraindata/dsui/discussions) or see the [plans](https://dsui.northgraindata.com/#pricing).
## Community
Join the [DSUI Discord](https://discord.gg/6vgtDbVggc) to ask questions, share your setup, discuss integrations, and help shape what we build next.
## Contributing
Contributions are welcome. Start with [your first contribution](./CONTRIBUTING.md#your-first-contribution), browse [good first issues](https://github.com/northgraindata/dsui/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22good%20first%20issue%22), or explore [help wanted](https://github.com/northgraindata/dsui/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22help%20wanted%22).
## License
DSUI is developed by [Northgrain Data](https://northgraindata.com) and is available under the [Apache License 2.0](./LICENSE).