BA

Bangle.io

Local-first Markdown note-taking app that runs in the browser

Notes & Knowledge Base ★ 1.2k stars Easy setup AGPL-3.0

Bangle.io is a local-first web app for taking Markdown notes. It stores notes in the browser or a local folder via the file system API, supports WYSIWYG-style editing and backlinks, and works fully offline without a server.

Key features

  • Local-first Markdown notes
  • WYSIWYG editing
  • Backlinks and tags
  • Works offline in browser

Pros & cons

Strengths

  • Owns your files
  • No server required

Trade-offs

  • Browser storage limits
  • Small plugin ecosystem

Bangle.io replaces

Last reviewed Sep 13, 2026 · 821 words

Bangle.io has no server side. It is a single-page web app that keeps your Markdown notes in the browser's own storage or, on Chromium browsers, in a folder on your disk through the File System Access API. "Self-hosting" it means serving a directory of static files from any web server, and the payoff is a fast, wiki-style editor with backlinks that keeps working with the network cable pulled out. The trap is the storage model: notes kept in browser storage die with the browser profile, so the folder mode is the only one I would trust with anything that matters.

It is a static site, not a service

Deploying Bangle.io is closer to hosting a static blog than running Nextcloud. Build the repository (Node and a package manager, a few minutes) or use the hosted build at bangle.io, then serve the output from Caddy, nginx, or a Docker container that does nothing but serve files. There is no database, no accounts, no API, and no background process. The 128 MB in the listing is a generous ceiling; the server's job is finished the moment the page loads. That also means there is nothing to back up on the server side, which is the point and also the problem, covered below.

Two storage modes, one of which is a trap

Bangle.io workspaces come in two kinds. Browser storage workspaces live in IndexedDB inside the browser profile. They are fast and need no permissions, but the notes are invisible to any other device, capped by whatever quota the browser grants the origin, and gone if you clear site data, switch browsers, or lose the profile. Treat them as scratch space.

Native file system workspaces point at a real folder on disk. Every note becomes a .md file you can open in any editor, grep, commit to git, or sync with Syncthing. This is what you want. The catch is browser support: directory access through showDirectoryPicker is a Chromium API, so this mode works in Chrome, Edge, Brave and their relatives and does not work in Firefox or Safari at last check. If you are a Firefox household, Bangle.io is effectively browser-storage-only for you, and I would look elsewhere.

Multi-device is your problem to solve

Because there is no server, there is no sync. The workable pattern is a folder-mode workspace on each machine, all pointing at a directory that Syncthing keeps identical, with a conflict policy you can live with. It works, and it gives you a plain-Markdown corpus that outlives the app. What it does not give you is a mobile experience: mobile browsers with directory access are essentially none, and there is no native app. Phone capture has to go through some other tool that writes into the same folder.

The editor is the reason to bother

The part Bangle.io does well is the editing surface. It renders Markdown as you type rather than in a split pane, supports [[wikilinks]] with backlinks, tags, and a fuzzy palette for jumping between notes, and it stays responsive on a few thousand files. It feels like Obsidian's core loop in a browser tab. What it lacks is Obsidian's plugin ecosystem: there is a small set of built-in extensions and no marketplace, so if your workflow depends on dataview-style queries, a canvas, or a daily-notes plugin with 40 settings, you will miss them.

The project is also small. 1,232 stars, a single main author, and a pace of development quieter than its 2021 launch. Read the commit log before adopting it as your system of record.

Where it sits against the alternatives

If you want browser-first Markdown with a server that actually syncs and indexes, SilverBullet is the bigger and more actively developed sibling: the same wiki-link idea, but with a real backend, a query language, and a mobile PWA. If you want native apps on every platform with end-to-end encrypted sync you host yourself, Joplin is the boring, safe answer. Bangle.io beats both in one scenario only: you want zero server state, plain files on disk, an editor nicer than a text editor, and you are on a Chromium browser. The notes apps you own piece ranks the wider field by exit cost.

What I'd do

Use Bangle.io in folder mode only, pointed at a Syncthing-shared directory, on Chromium. Serve the static build from the same Caddy instance that fronts everything else, or skip hosting entirely and use the public site, since no note data leaves your machine either way. Back up the folder, not the browser. If you need mobile capture, Firefox support, or plugins, pick SilverBullet for the browser-first workflow or Joplin for everything else and do not look back.

Compare Bangle.io

10 head-to-head comparisons.

Similar notes & knowledge base apps