silverbullet

From public sources

SilverBullet is an open-source, self-hosted, browser-based Markdown notes app and personal knowledge base programmable with Lua.

ApplicationCategory: Web Apps · Docs & wikis · Files & cloud storage · Project managementOpen sourcedata checked Oct 15, 2026

Overview

Many people keep notes, tasks and reference material spread across apps that cannot be extended or easily combined. SilverBullet is a browser-based personal knowledge base built on Markdown: your notes are stored as a space of linked pages, navigated through a page picker or wiki-style links that work in both directions. It pairs a live-preview Markdown editor with built-in outlining, task tracking, an object database with a query language (SLIQ), and Space Lua, an integrated Lua scripting environment for generating content and creating custom commands, page templates and widgets. The project is released under the MIT license and is self-hosted, so your content stays under your control. SilverBullet suits writers, outliner users, people who manage data in notes, and developers or power users comfortable with a little programming. It can be run from a Docker container or built from source with Rust and Node.js.
  • documentation
  • end-user-programming
  • knowledge-base
  • knowledge-management
  • lua
  • markdown
  • note-taking
  • personal-knowledge-management

Installation

Commands are shown, never run by the marketplace. Check them against the official documentation.

Compatibility

Unknown means no evidence was found — not that the product is incompatible.
PlatformStatusArchitectureEvidenceConfidence
Web browserCompatible—Declared on the card—
Server / self-hostedCompatiblex86_64official build in release 2.12.1: sb-freebsd-x86_64.zip0.70
Container (OCI)Unknown———
WindowsCompatiblex86_64official build in release 2.12.1: sb-windows-x86_64.zip0.70
macOSCompatiblearm64official build in release 2.12.1: sb-darwin-aarch64.zip0.70
Compatiblex86_64official build in release 2.12.1: sb-darwin-x86_64.zip0.70
LinuxCompatiblearm64official build in release 2.12.1: sb-linux-aarch64.zip0.70
Compatiblearmv7official build in release 2.12.1: sb-linux-armv7.zip0.70
Compatiblex86_64official build in release 2.12.1: sb-linux-x86_64.zip0.70
Node.jsCompatible—package manifest: package.json name0.60

Releases

checked Oct 29, 2026
v2.12.1LatestOct 12, 2026Official source ↗

Files in 2.12.1

The marketplace does not host these files: downloads go to the official source. Files have not been scanned by us.
FilePlatformSizeSHA-256Download from the official source
sb-darwin-aarch64.zipmacos · arm64 · zip2.7 MB153d8562c8f7…Official source ↗
sb-darwin-x86_64.zipmacos · x86_64 · zip3 MB1978929a4c97…Official source ↗
sb-freebsd-x86_64.zipserver · x86_64 · zip3.1 MB4777773267b8…Official source ↗
sb-linux-aarch64.ziplinux · arm64 · zip3.1 MB42eb60a2eabb…Official source ↗
sb-linux-armv7.ziplinux · armv7 · zip2.9 MBf2bdfb6ca0ae…Official source ↗
sb-linux-x86_64.ziplinux · x86_64 · zip3.2 MBa04b3297a009…Official source ↗
sb-windows-x86_64.zipwindows · x86_64 · zip5.4 MBb40343a8d020…Official source ↗
silverbullet-server-darwin-aarch64.zipmacos · arm64 · zip10.7 MBcd83db88e175…Official source ↗
silverbullet-server-darwin-x86_64.zipmacos · x86_64 · zip11.5 MB36fc5c30d5b1…Official source ↗
silverbullet-server-freebsd-x86_64.zipserver · x86_64 · zip11.7 MB02deb1064657…Official source ↗
silverbullet-server-linux-aarch64.ziplinux · arm64 · zip12 MB33000b6f7c87…Official source ↗
silverbullet-server-linux-armv7.ziplinux · armv7 · zip11.9 MB4a2f720664d6…Official source ↗
silverbullet-server-linux-x86_64.ziplinux · x86_64 · zip12.4 MB0ea5c0575021…Official source ↗
silverbullet-server-windows-x86_64.zipwindows · x86_64 · zip15.9 MB1633ca553161…Official source ↗
CHANGELOG.mdother66 KB95a84d5af392…Official source ↗
plug-compile.jsother60.9 KB73c125a0356d…Official source ↗

Release history

Quality profile

algorithm quality-v1.0 · assessed Oct 15, 2026
Quality Score100
Risk Score0
Confidence 1.00
Quality Score and Risk Score are different measures. A high score does not guarantee safety.

Score components

Maintenance · 2020
last activity 0 days ago
Documentation · 1515
README 5841 chars, description present
Ready to use · 1515
install instructions: yes; releases: yes
Metadata · 1010
4/4 of description, homepage, license, topics
Releases · 1010
10 release(s), latest 4 days ago
Category confidence · 1010
classifier confidence 1
Adoption · 1010
6325 stars (log-dampened, 10k = max)
License clarity · 55
SPDX MIT
Community · 55
issues enabled, 513 forks

License

MIT
Known licensefrom the repository host

This is the catalog policy status, not legal advice.

Sources

github.com/silverbulletmd/silverbulletPrimary★ 6,325 starslast activity Oct 15, 2026Primary repository · Confidence 1.00

Reviews

Sign in to write a review

No reviews yet.

Alternatives

README

From silverbulletmd/silverbullet · license MIT · fetched Oct 29, 2026

[GitHub Repo stars] [Docker Pulls] [GitHub Downloads (all assets, all releases)] [GitHub contributors] [Ask DeepWiki]

SilverBullet

SilverBullet is a Programmable, Private, Browser-based, Open Source, Self Hosted, Personal Knowledge Database — a fancy term for a "notes app on steroids".

Yowza! That surely is a lot of adjectives to describe a browser-based Markdown editor programmable with Lua.

Let’s get more specific.

SilverBullet combines a clean live-preview editor with wiki-style linking, a built-in database and query language, and a fully integrated Space Lua scripting environment, turning your notes into a programmable system that grows with you.

In SilverBullet you keep your content as a collection of Markdown Pages (called a Space). You navigate your space using the Page Picker like a traditional notes app, or through Links like a wiki (except they are bi-directional).

If you are the writer type, you’ll appreciate SilverBullet as a clean Markdown editor with Live Preview. If you have more of an outliner personality, SilverBullet has Outlining tools for you. Productivity freak? Have a look at Tasks. More of a database person? You will appreciate Objects and Queries (SLIQ).

And if you are comfortable programming a little bit — now we’re really talking. You will love dynamically generating content with Space Lua (SilverBullet’s Lua dialect), or to use it to create custom Commands, Page Templates or Widgets.

You were told there’s no such thing as a silver bullet. You were told wrong.

Much more detail can be found on silverbullet.md

Installing SilverBullet

Check out the instructions.

Developing SilverBullet

SilverBullet's frontend ("client") is written in TypeScript and built on top of the excellent CodeMirror 6 editor component. Additional UI is built using Preact. ESBuild is used to build the frontend.

The server backend is written in Rust (a Cargo workspace). It serves the pre-built client bundle, the file/space HTTP API, authentication, and a headless-Chrome runtime for server-side Lua.

Code structure

  • bin/silverbullet/: The standalone silverbullet server binary (Rust) (this is the one you generally run)
  • bin/sb/: The sb CLI client (Rust)
  • bin/plug-compile.ts: the plug compiler
  • client/: The SilverBullet client (browser, TypeScript)
  • server/: The SilverBullet server library (Rust): HTTP router, handlers, auth, runtime seam
  • server-common/: Shared Rust crate (space primitives, shared types)
  • server-runtime-chrome/: Headless-Chrome runtime backend (Rust)
  • plugs: Set of built-in plugs (TypeScript) that are distributed with SilverBullet
  • libraries: A set of libraries (space scripts, page templates, slash templates) distributed with SilverBullet (Space Lua)
  • plug-api/: Useful APIs for use in plugs and published to NPM
    • lib/: Useful libraries to be used in plugs
    • syscalls/: TypeScript wrappers around syscalls
    • types/: Various (client) types that can be references from plugs
  • scripts/: Useful scripts
  • docs/: documentation (published as docs.silverbullet.md and bundled as Desktop's Help)

Requirements

  • Node.js 24+ and npm 10+: Used to build the frontend (client) and plugs
  • Rust (stable, via rustup): Used to build the server

The project includes .nvmrc and .node-version files. If you use nvm or another Node version manager, it will automatically use the correct Node.js version:

nvm use  # If using nvm

First, install dependencies:

make setup

To create a (release) build:

make

This will produce silverbullet and cli binaries in ./target/release/, run ./target/release/silverbullet to run the server.

Development workflow

SilverBullet has two halves you rebuild independently:

  • The client (TypeScript: client/) is built by ESBuild into client_bundle/, which the server then serves.
  • The server (Rust: server/, server-common/, server-runtime-chrome/, bin/silverbullet/) is a compiled binary.

Run the server in development with cargo run. A debug build serves the client bundle live from client_bundle/ on disk (a release build embeds it instead):

npm run build
cargo run <PATH-TO-YOUR-DATA-FOLDER>

When you change only the client (TypeScript in client/): you do not need to restart the server. Rebuild just the client bundle and reload the page in your browser — the debug server serves the freshly-built bundle straight from disk:

npm run build

To build a self-contained release binary (with the client bundle embedded), and run it:

make
./target/release/silverbullet <PATH-TO-YOUR-DATA-FOLDER>

Useful development tasks

# Clean all generated files
make clean
# Typecheck and lint all code
make check
# Format all code
make fmt
# Run all tests
make test
# Run benchmarks
make bench

Build a docker container

Note, you do not need Node.js nor Rust locally installed for this to work:

docker build -t silverbullet .

To run:

docker run -p 3000:3000 -v <PATH-TO-YOUR-DATA-FOLDER>:/data silverbullet
Open the repository ↗