mdbase specification v0.3 · open source
Use the same Markdown files in different apps.
An mdbase is a folder of ordinary Markdown files that more than one app can understand. You can open the files yourself, keep them where you choose, and decide which apps may use them.
- Specification
- Open rules for typed, queryable Markdown collections
- Libraries and CLI
- Open tools that work directly with local collections
- Connect
- App permissions, routing, and optional managed hosting
- Runtime
- Optional durable workflows, timers, and recovery
Here is one small mdbase.
This one contains project records, type definitions, and a small configuration file. A project app, a report, and a text editor can all use the same files.
projects/
├── mdbase.yaml
├── _types/
│ ├── project.md
│ └── person.md
├── projects/
│ └── website-redesign.md
└── people/
└── sam.mdThe files stay readable.
Each record is still a normal Markdown document. A short block at the top gives apps shared facts such as its title, status, and owner.
---
type: project
title: Website redesign
status: active
owner: "[[people/sam.md]]"
---
The new site should make mdbase
easier to understand.The type definition stored beside the records explains what those fields mean. Queries, links, validation, and safe updates follow the same open specification in every conforming tool.
Keep it on your computer or host it online.
For a local mdbase, the folder on your computer is the main copy. For a hosted mdbase, mdbase keeps the main copy available online.
The open specification and local tools need no account. Connect is the optional service for approving apps, reaching a local collection remotely, or keeping the authoritative copy online.
You choose what each app can do.
An app asks for one collection and a specific set of actions. You review the request before it can read or change anything.
- App
- Project app
- Collection
- Projects · on this computer
- Allow
- View, find, create, and edit records
- Keep blocked
- Delete records
The local connector enforces grants for local folders. The hosted provider executes approved operations for hosted collections. See the complete trust boundary.
Access stays under your control.
Pause or remove an app's access at any time. The main copy keeps every change in order while approved apps can keep working copies for offline use.