SI

SilverBullet

Hackable note-taking for the self-hosted web

Notes & Knowledge Base ★ 6.1k stars Easy setup MIT

SilverBullet is an extensible, Markdown-based note-taking web app that you can run on your own server and access from any browser. It targets users who want a programmable personal knowledge tool. It is deployed via Docker or Deno.

Key features

  • Markdown-based with live queries
  • Extensible via Space Script
  • Works offline as a PWA
  • Plain file storage

Pros & cons

Strengths

  • Highly hackable
  • Lightweight
  • Files stay portable

Trade-offs

  • Niche and DIY-oriented
  • Smaller community

SilverBullet replaces

Last reviewed Sep 13, 2026 · 762 words

If the sentence "my notes folder should be a database I can query from inside a note" makes sense to you, SilverBullet is the most direct implementation of that idea you can self-host. If it does not, stop here and pick Joplin. SilverBullet is a 6,000-star, MIT-licensed, single-user Markdown web app that runs in one container on 128 MB of RAM, stores everything as plain .md files in a folder, and treats those files as data you can filter, join, and render with embedded queries and scripts. It is a power tool with a small community, and it makes no attempt to be anything else.

Live queries turn a folder into a database

Every page is Markdown with optional front matter, and every page, tag, task, link, and attribute is indexed as it is saved. A query block embedded in any page lists, say, every open task tagged #urgent across the whole space, and it re-renders whenever the underlying pages change. Templates generate new pages from that same data, so a weekly review page can build itself. Space Script goes further: you write small scripts inside your notes that register commands, add custom functions to queries, or react to events. Obsidian users get the equivalent from Dataview and Templater plugins; here it is built in, and the scripts live in the same folder as the notes, so they sync and back up with everything else.

Deployment is one container and one folder

services:
  silverbullet:
    image: ghcr.io/silverbulletmd/silverbullet:latest
    ports:
      - "3000:3000"
    environment:
      - SB_USER=alice:change-this-password
    volumes:
      - ./space:/space
    restart: unless-stopped

SB_USER is a single username and password pair, which is the entire auth model. Put a reverse proxy with TLS in front, or better, expose it only over Tailscale, because a notes server that reaches the public internet with one basic-auth credential is a thin defence. The space directory is your notes; back it up like any folder and you have backed up the app.

Offline works because the browser holds a copy

SilverBullet is a progressive web app and, in its sync mode, the browser keeps a full copy of the space and its index locally. Close the laptop, open a note on the train, edit it, and the change pushes when connectivity returns. Install it to the home screen on a phone and it behaves like a native app. The cost is that first load of a large space takes a while, and the offline copy lives in the browser's storage, so clearing site data clears it. It is a good offline story for one person on two or three devices, not a multi-user collaboration system, and the project says so plainly.

Files stay files, so other editors are welcome

Because the space is a folder of Markdown, you can point Syncthing or a git repo at it and edit with Obsidian, VS Code, or vim on the side. SilverBullet watches for file changes and re-indexes. Its own additions (front matter attributes, query blocks, a few config pages) are plain text that other editors simply render literally. The one caution is not to let two tools write the same file within the same second, which is the same caution any synced folder deserves.

Where Trilium and Joplin fit better

Trilium is the closest rival: also self-hosted, also scriptable, but hierarchical rather than flat, with a richer desktop client and notes stored in a database rather than files. Joplin is the safe default for multi-device use with end-to-end encryption and mobile apps that work without a browser. And if you are choosing between this and Obsidian, note that Obsidian's desktop app is more polished and its plugin catalogue is enormous, but it is proprietary and its sync is either a paid service or a DIY job. SilverBullet is what you run when you want the Obsidian-with-Dataview experience served from your own box to any browser. The notes category covers the wider field.

What I'd do

One container on the home server, space on a disk that is already backed up, reachable only over Tailscale, installed as a PWA on the phone. Spend the first evening writing a tasks page with one query and a daily-note template, because those two things are what justify the tool. If after a week you have not written a query, you did not need SilverBullet, and Joplin will serve you with less thinking.

Compare SilverBullet

29 head-to-head comparisons.

Similar notes & knowledge base apps