Basalt docs
basaltapp.io

Basalt documentation

Basalt is a knowledge workspace: block-based documents, typed databases with views, and real-time collaboration — Markdown-native, API-first, and hosted by us.

The idea it is built around: every block has exactly one canonical home, and can be referenced — live and editable — anywhere else. One truth, many references.

Use it

Six guides, in the order they are worth reading:

  • Blocks, the editor and the keyboard — what you write in, what / offers, the Markdown you can type at the start of a line, and every chord that is bound.
  • References, links and backlinks — linking a page, embedding one, pointing at a single block, and what each of them does when the target is renamed, trashed or out of your reach.
  • Databases, views and rows — a typed table whose rows are pages, the saved ways of looking at one, and the difference between taking a row out of a table and deleting the page.
  • Sharing, comments and history — who can open a page and where that access came from, what people write on it, what it remembers, and the trash.
  • The workspace and its settings — members, guests, groups, invitations, symbols, export, access tokens, webhooks, and what each plan allows.
  • Import — bringing a Notion export or a Markdown folder in, and what it costs.

Build on it

  • API — authentication, access tokens, errors, pagination, webhooks, and pages as Markdown.
  • API reference — every endpoint, generated from the OpenAPI document the server emits.
  • Markdown specification — the canonical dialect every page serializes to and parses back from, loss-free.
  • MCP server — the first-party Model Context Protocol server, for agents.

Running an instance is our job, not yours. Basalt is hosted: there is no installation to perform, no database to back up and no upgrade window to sit through. What stays yours is the content — every page reads and writes as plain Markdown over the API, so leaving is a GET loop rather than a negotiation.

One account, one set of workspaces — but each app is switched on per workspace. A workspace you use in another of our apps does not appear here until someone who administers it turns Basalt on for it; until then Basalt says exactly that and offers the button, instead of inviting you to create a workspace you already have.

What state is this in?

Pre-1.0 and moving. What the manual above describes is what the product does today, and where a guide describes something that does not work yet it says so on the page rather than leaving you to find out — each one ends with a frank list of what it cannot do. Outbound mail is real too: invitations, password resets and sign-up confirmations are delivered rather than promised.

The manual is newer than the product, and two subjects are still missing. The sidebar — collections, the page tree, favourites and finding a page — is described only where another guide needed it, most of it under Sharing, comments and history. And fields have no page of their own: what a database column is sits under Databases, views and rows, and the workspace's field registry is named but not explained.

In another language

Every page on this site exists in English and German; the switch is in the top bar. The API reference is the one deliberate exception: its endpoint descriptions come straight from the server's own route table and stay English in both, because a translated second copy would drift the first time a route changed.