selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

salt.md logo

Self-host salt.md

v1.1.5

Docs, databases, and AI agents in one self-hosted workspace

ReleaseOpen SourceAGPL-3.0
Updated11 hours ago
LanguageTypescript
Setup difficultyEasy
MobilePWA
ThemeDark mode
Stars
173
Port
8420 (HTTP server)
Docker
ghcr.io/saltmd/salt.md
Install with Docker
Tasks board view with To do, In progress, and Done columnsMonth calendar view of a databaseTable view with typed columnsSearch dialog with passage resultsLibrary graph showing pages as linked dotsPage with comments panel open

What is salt.md?

salt.md runs as a single Go executable that bundles a web interface, a SQLite database, and an MCP endpoint for AI assistants. Users get a block-based editor for writing pages, which can also become structured databases with multiple visual layouts like kanban boards and calendars. Several people can edit simultaneously with live cursors, and changes merge automatically even after offline work. AI tools such as Claude or Cursor connect through the Model Context Protocol and operate on the same data with the same access rules. The package has no external service requirements — no separate database, cache, or search engine — so deployment is copying one file or running one container. Backups are a single directory copy. Authentication supports passwords with TOTP, plus optional Google or Microsoft OAuth. The interface works as a progressive web app and there are native desktop wrappers for macOS and Linux. Everything is licensed AGPL-3.0 with no commercial tier holding back features.

salt.md alternatives

All self-hosted alternatives to AppFlowy Cloud → All self-hosted alternatives to Notion → All self-hosted alternatives to Trello →

Should you self-host salt.md?

salt.md scores 50/100 on selfhost.directory (how scoring works) and ranks #20 of 42 in Knowledge Management. It has 173 GitHub stars, +2 in the last 30 days.

It shipped 11 stable releases in the past year. The latest, v1.1.5, came out on 29 October 2026. New versions land roughly every 4 days.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Memos (86/100, 64 175 stars). It scores higher overall, so compare the two before you pick. See salt.md vs Memos side by side.

Features

  • Activity Log
  • Backup and Restore
  • Block Editor
  • Databases with typed properties
  • Desktop AppBeta release
  • Full-Text Search
  • MCP server for AI agents
  • Multi-language Support
  • Multiple database views
  • OAuth sign-in (Google, Microsoft)
  • Public Sharing
  • Realtime Collaboration
  • REST API
  • Two-factor authentication (TOTP)

salt.md README

salt.md: One workspace. People and agents.

Docs, databases and realtime editing for your team. The same workspace is open to Claude, ChatGPT and Cursor, on exactly the access you grant them.
One binary, on your own server.

Website · Live demo · Documentation · Quickstart


A Tasks board in salt.md, cut in two: light mode on the left, dark mode on the right.

Quickstart

curl -fsSL https://raw.githubusercontent.com/saltmd/salt.md/main/install.sh | sh

One command downloads the binary for your platform, installs it, starts it and prints the address to open. On a Linux server it sets itself up as a systemd service, and running it again upgrades it. No curl on the machine? wget -qO- … | sh does the same.

Or with Docker:

docker run -d -p 8420:8420 -v salt-data:/data ghcr.io/saltmd/salt.md:latest

There is nothing else to install: no database server, no cache, no object store. Reverse proxies, TLS and backups are in the self-hosting guide.

People and agents in the same place

An agent is asked to organise the launch notes. A page appears, a database is created, the rows fill in. A person opens the same board a second later and carries on. Same pages, same permissions, same history.

Connect Claude, ChatGPT, Codex, Cursor, Gemini CLI or any other MCP client to /mcp and it works on the workspace you use:

  • Pages: create, edit, move, duplicate, trash and restore
  • Databases: create them, change the schema, add and query rows, set up views
  • Search with the same permission checks a person gets
  • Bulk imports from any JSON source, without the content passing through the agent
  • Comments, and an append-only note trail on every page
  • Presence: the page shows which agent is working on it, before you start typing

And a list it cannot touch. No agent can create or delete accounts, issue tokens, take or restore a backup, change instance settings or decide who is in a workspace, and the server tells every agent that connects. A credential carries its person's access and never more, every workspace decides what agents may do there, and the activity log keeps their changes apart from yours.

MCP tools · Agent access · Permissions

A whole workspace

How to install salt.md

Install salt.md with Docker

Docker Engine
Environment variables
SALT_ADDR, SALT_DATA, SALT_TLS_CERT, SALT_TLS_KEY, SALT_MEMORY_MB, SALT_TRASH_DAYS, SALT_RESTORE_FORCE, SALT_IMPORT_ALLOW_PRIVATE

$ docker run -d -p 8420:8420 -v salt-data:/data ghcr.io/saltmd/salt.md

Multi-arch image for amd64 and arm64

How to configure salt.md

  • SALT_ADDR:8420Listen address
  • SALT_DATA./dataData directory (SQLite file + uploads)
  • SALT_TLS_CERTnot setTLS certificate file, serves HTTPS directly
  • SALT_TLS_KEYnot setTLS key file, used with the certificate
  • SALT_MEMORY_MBdetectedHow much memory to assume; decides how much PDF text is indexed

salt.md releases & version history

FAQ

How does it compare to Obsidian?

Obsidian is local files and excellent for writing alone; its Bases plugin even gives table and card views. What it does not do is several people editing one document at once, or an agent reaching the vault over MCP.

How does it compare to Docmost, Outline or AppFlowy?

Docmost and Outline each want PostgreSQL and Redis beside the app; AppFlowy Cloud's own compose file brings up eleven containers. salt.md is one process with SQLite compiled in.

Does collaboration need a sync server?

No. The Yjs relay is part of the same binary. Edits merge through CRDTs, so two people editing the same paragraph offline converge when they reconnect.

Can I get my content back out?

Yes, in three ways: Markdown export for a single page or a whole workspace as a ZIP, a native workspace archive that moves everything to another instance including databases and files, and the SQLite file itself.

Where is my data?

In one directory you choose, containing a SQLite file and your uploads. Nothing is sent anywhere. There is no telemetry and no phone-home.

What do I need to run it?

A machine that can run a single binary. No database server, no runtime, no dependencies: SQLite is compiled in and the frontend is embedded.

Is salt.md open source?

Yes, under the AGPL-3.0. Use it anywhere, including at work, with no fee and no separate licence. If you change it and let others use your version over a network, you publish those changes.

More in Collaboration

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…
A page in the block editor.

Write. A block editor with a slash menu, checklists, code, tables, callouts and diagrams. Page links, backlinks, covers and icons.

A collection as a table with typed columns.

Organise. Any page becomes a collection with typed properties: select, date, person, relation, rollup, formula and more.

The same collection as a month calendar.

Plan. Table, board, list, gallery, calendar, timeline or form, each with its own filters. Any date can be an iCal feed.

The search dialog with passage results.

Find. Full-text search over every page and the text inside uploaded PDFs, one shortcut away from anywhere.

Authorsaltmd
Port8420HTTP server
AudienceTeams
MobilePWA
Docker
ghcr.io/saltmd/salt.md
Auth
2FABuilt-inOAuth
Details
Dark mode
Monetization
free
Integrations
WebhooksCloudflare TunnelMCP clients (Claude, ChatGPT, Cursor, Codex, Gemini CLI, OpenClaw, Hermes Agent)iCal calendar apps
Languages
Related
AppFlowyObsidian
Maintainer? Add a badge
selfhost.directory score for salt.md
[![selfhost.directory](https://selfhost.directory/badge/salt-md.svg)](https://selfhost.directory/project/salt-md?utm_source=badge&utm_medium=readme)