AGPL-3.0 · SELF-HOSTED
DATAMART
A structured information platform you run yourself — schema, access control, workflows and an admin UI in one binary, with your entries stored as files you own.
- ≤300MEntries Supported
- 4Client SDKs
- ~50 MBSingle Binary, No Runtime
- 106 MBFull Stack, Idle
DMART in 30 seconds
A space organizes your data into folders. A schema describes a valid entry, and dmart checks every write against it.
JSON entries, files and tickets all go in. Each one lands as a plain file on disk and as an indexed row in PostgreSQL or SQLite.
Roles and permissions are checked on every request, down to the folder, the action and the field.
One query language searches everything you stored: filter on any field, sort, and page through the results.
A REST API, SDKs for Python, TypeScript, Dart and C#, an admin UI, a catalog, and an MCP server for AI agents, all from one binary.
Core Pillars
Unified Data
Entries, attachments, metadata — all in one model. Structured and unstructured data, seamlessly.
Powerful Search
Full-text search, filtering, aggregation. Powered by SQL full-text blazing performance.
Access Control
Role-based access, granular permissions down to folder and entry level. Secure by default.
Extensible
Plugin architecture, webhooks, custom workflows. Adapt DMART to any use case.
Runs Where a Backend Normally Can’t
One self-contained binary, compiled ahead of time. No runtime to install, no container required, no separate frontend to deploy — the admin UI ships inside it.
Measured on a Raspberry Pi Zero 2 W with 416 MB of usable RAM, serving with PostgreSQL alongside it on the same board: 106 MB resident for the whole stack, ~14 ms warm reads, and four concurrent logins served with a bounded peak that is fully reclaimed. A 10-hour continuous write soak held memory flat — a plateau, not a slope — with no OOM and no thermal throttling. The same binary runs on a server.
- 106 MB
- dmart + PostgreSQL, idle, of 416 MB
- ~14 ms
- warm read, 5,000-entry fixture
- 0.6 GB/day
- written under sustained load — ~460 yr on a 100 TBW card
Your Data Stays Yours
Files are the source of truth
Entries live as plain files on disk. The SQL store is a rebuildable index over them — copy the folder, rebuild the index anywhere, and you have your system back.
Standard formats, not a vendor schema
Payloads are JSON, constrained by JSON Schema Draft 7 and evaluated by a standard library. There is no dmart-specific type system to migrate out of.
Self-hosted, AGPL-3.0
Run it on your hardware, in your network, air-gapped if you need to. No per-seat pricing and no hosted service you depend on.
How It Works
- 01
Define Your Space
Create spaces and organize data into hierarchical folders — just like a file system.
- 02
Store Anything
Create entries with JSON payloads, attach files, add metadata. Schema-validated or free-form.
- 03
Query & Discover
Full-text search, filter by any field, sort, paginate. All through a consistent REST API.
- 04
Integrate Everywhere
Use official SDKs for Python, TypeScript, Dart, and C#/.NET. Or call the REST API directly.
Explore
Features
Unified data management, collaboration tools, and advanced search capabilities.
Why DMART?
Transform data from a liability into an asset. Own your data, no vendor lock-in.
Technical
ASP.NET Core on .NET, PostgreSQL-backed. A single Native-AOT binary — built for simplicity and speed.
Drivers
Official client libraries for Python, TypeScript/JavaScript, Dart/Flutter, and C#/.NET.