Skip to introduction

mdbase v0.3 · Connect private beta

Different apps can use the same Markdown files, online or offline.

An mdbase is a folder of ordinary Markdown files, plus a small description of how they fit together. You can read the files yourself, keep them where you choose, and let more than one app work with them.

mdbase gives independent apps a shared, durable collection of ordinary files. The collection remains under your control.

  • ReadableMarkdown you can open with ordinary tools
  • UnderstandableShared definitions tell apps what records mean
  • ControlledEach app gets only the access you approve

Here is one small mdbase.

This project collection has ordinary Markdown records, definitions for the kinds of records it contains, and one configuration file.

projects/
├── mdbase.yaml
├── _types/
│   ├── project.md
│   └── person.md
├── projects/
│   └── website-redesign.md
└── people/
    └── sam.md

Each record remains useful on its own. The extra files let an app recognise a project, understand fields such as status and owner, and check that a change is valid.

  • Project appUpdates status and owner through typed operations
  • Report appReads the same projects for a weekly summary
  • Text editorOpens the exact Markdown records directly

The files make sense to people and apps.

A project record is still a normal Markdown document. A short block at the top gives apps the facts they need; the rest is writing you can read and edit anywhere.

---
type: project
title: Website redesign
status: active
owner: "[[people/sam.md]]"
---

The new site should make mdbase
easier to understand.

The type definition stored in the same collection explains these fields. A new app can check that it understands them before asking you for access.

Keep it local or host it with mdbase.

Hosting is optional. In both cases the records remain Markdown, apps use the same basic actions, and you decide which apps can connect.

The difference is which copy has the final say. For a local mdbase, that is the folder on your computer. For a hosted mdbase, it is the online copy kept by mdbase.

  • LocalYour folder is the main copy; your computer must be reachable
  • Hostedmdbase keeps the main copy available online
  • Either wayYou keep readable files and explicit app permissions

An app asks before it sees anything.

The request names the app, the kind of collection it understands, and every action it wants to perform. Your records stay private while you decide.

You choose one compatible collection and approve only the actions that make sense. Permission belongs to that app and that collection; it can be narrowed, paused, or revoked later.

  1. 1Review the app and the collection it understands
  2. 2Choose a collection and its allowed actions
  3. 3Approve the connection or keep the collection private
  • ReadOpen records and see their contents
  • SearchFind matching records
  • EditCreate, update, rename, or delete records

The main copy stays in control.

For a local collection, the mdbase connector on your computer checks every request before opening or changing a file. Local folder paths stay on your computer.

For a hosted collection, mdbase checks the same permission beside the online main copy. An approved app may keep an offline copy of records it can use, and you may keep an optional synced Markdown copy for local tools.

  • Main copyOne authoritative history keeps changes in order
  • Working copiesUseful for offline and local work
  • Your controlPause or revoke an app's access at any time

Five names, one route to the files.

mdbase is the collection format and specification. The other names describe software that reads a collection, connects applications to it, or runs workflows beside it.

  1. 01
    Application

    A project board, reporting tool, agent, or general collection editor.

    uses the Connect SDK
  2. 02
    @mdbase/connect

    The application SDK for authorization, saved connections, routing, and typed operations.

    try it locally
  3. 03
    mdbase Connect

    The optional access layer for application grants, local routing, and hosted collections.

    understand Connect
  4. 04
    Conforming implementation

    Executes collection discovery, validation, queries, links, and revision-safe changes.

    compare support
  5. 05
    mdbase collection

    The authoritative Markdown, YAML, types, and collection configuration.

    read the specification

Event and action interoperability lets independent applications cooperate through shared contracts. Durable runtime execution is an optional layer for persisted workflows, timers, retries, and recovery.

One task collection, three useful views.

TaskNotes and the mdbase-tasknotes command line tool can use the same task type and Markdown records. Ordinary file tools continue to read and version those records directly.

ObsidianTaskNotes

Provides task views and editing inside an Obsidian vault with mdbase export enabled.

Open TaskNotes
Terminalmdbase-tasknotes

Creates and queries the same tasks through the shared collection core.

Open the CLI
FilesEditor and Git

Read the Markdown, inspect frontmatter, and review every durable change as text.

Read record semantics

The specification defines the shared collection behavior. Each tool owns its interface and task-domain behavior.

What you can use today.

The specification and implementation evidence are public. Connect is operating as a private beta while its release gates are completed.

Specification
Publicmdbase v0.3, fixtures, and conformance rules
Implementations
Public sourceVersioned Rust and TypeScript profile claims
Connect service
Private betaLocal and hosted authorities are deployed for beta accounts
Connect SDK
Source buildThe npm packages await their first public release

Start with the outcome you need.

Questions to settle early.

Is mdbase an application, a database, or a service?

mdbase is a specification for collections of Markdown records. Implementations provide database-like operations over those files. Connect is an optional service and local connector for application authorization and routing.

Does an application need mdbase Connect?

An application can work directly with a conforming implementation. Connect is useful when independent applications need user-approved access to local or hosted collections through one SDK.

Can an existing Markdown folder become a collection?

Yes. Add mdbase.yaml, then introduce type definitions as the collection needs validation, shared field meaning, links, queries, or lifecycle rules.

Who can read collection records?

Local records are read by the registered connector and approved applications. Hosted records are also readable by the hosted provider so it can execute operations. Thesecurity model names each boundary.

Which path should a new developer take?

Run the local SDK example first. Continue to theConnect authorization guidewhen the collection operations and revision model are familiar.