Birchpad
Alpha · version 0.1.3

A fast text editor in the spirit of Notepad++

For Windows, macOS and Linux. Written in Rust, drawn on the GPU, with no browser engine inside. Free, open source, and without telemetry.

MIT or Apache-2.0 · All platforms and formats

  • 50languages with highlighting and folding
  • 3systems: Windows, macOS, Linux
  • 0telemetry, accounts or ads
  • $0forever: MIT or Apache-2.0

Features

Everything you open Notepad++ for

The project's first goal is feature parity with Notepad++. Most of the everyday work is already there.

Tabs and split views

Drag a tab to the right or the bottom and the document opens beside the other. Hold Ctrl to clone the same file.

50 languages

Highlighting and folding with tree-sitter, in the background and without stutter. It understands nesting: scripts in HTML, code in Markdown, regexes in JavaScript.

Multi-cursor and columns

Edit dozens of lines in one go, select a rectangle, and paste columns.

Encodings without mojibake

UTF-8 with and without BOM, UTF-16, legacy code pages such as Windows-1252. “Encode in” and “Convert to” work as in Notepad++, and saving is lossless.

Sessions that never lose work

Close the editor with unsaved drafts and they are back on the next start, along with your tabs.

Change history

A margin marks the lines you changed: orange until they are saved, green after.

Search the way you're used to

Normal, Extended (\n, \t, \x41) and regular expressions with back-references. Find in Files with Notepad++'s filters, marks, bookmarks, incremental search and a results panel.

Find what:  fn (\w+)\(
Replace:    pub fn $1(
Filters:    *.rs *.toml !\target
Directory:  ~/projects
— 214 hits in 37 files

Panels

Function List for 28 languages, Document Map, Folder as Workspace, projects, Clipboard History and the Character Panel.

Switching

From Notepad++, without relearning

Birchpad keeps what your fingers and scripts already know, and runs on more than Windows.

What stays the same

  • Shortcuts and menus. Ctrl+Shift+F, Ctrl+M, F3 and the rest are where you expect them.
  • The command line. -n, -c, -l, -ro, -multiInst: file associations and scripts keep working.
  • Project files. Projects live in Notepad++'s .workspace files and open in both editors.
  • A single instance. Launching again opens the files as tabs in the running window.

What you gain

  • macOS and Linux. One editor on all your machines, with the same settings.
  • A native GPU-drawn UI. No Electron, no Chromium inside.
  • Safe updates. An ed25519-signed manifest, and an SBOM and GitHub build provenance with every release.
  • Portable mode. Unzip it to a USB stick and the settings stay next to the program.
> birchpad -n120 -lpython script.py
> birchpad -ro -multiInst C:\logs\today.log
0 requests

Sends nothing

No telemetry, no crash reports, no accounts. Your files, sessions and backups stay on your computer. Birchpad goes online only to check for updates, once a day, and with updates.mode = "off" it makes no network requests at all. Privacy policy

MSI

Ready for organizations

A per-machine MSI, administrator policies in the Windows registry that users cannot override, and update channels that IT controls. Every release is built on GitHub's runners from the open source, with SHA-256 checksums.

Download

Free on every system

Pick an installer that updates itself, an MSI for administrators, or a portable ZIP.

Latest version: Birchpad 0.1.3

All releases and nightly builds →

Windows

The installer needs no administrator rights and updates itself. SmartScreen asks on the first start: “More info” → “Run anyway”.

macOS

macOS 10.15.7 or later, Apple silicon and Intel. Until the app is notarized, open it the first time with Control-click → Open.

Linux

To see Birchpad in the applications menu, copy the .desktop and .png files from the archive — instructions.

Verify a download: gh attestation verify <file> --repo SecurityTrip/Birchpad, or with the release's SHA-256 checksums.

Roadmap

First, Notepad++ parity. Then further

Phases are ordered by dependency, not by calendar. Details are in the roadmap.

  1. ✓

    Foundation and the first notepad

    Tabs, encodings, line endings, find and replace, installers and updates.

  2. ✓

    A Notepad++-level editor

    Highlighting for 50 languages, folding, multi-cursor, bookmarks, sessions.

  3. ✓

    Search and navigation 0.1.3

    Regular expressions, Find in Files, marks, side panels, navigation history.

  4. 4

    Customization next

    Themes (importing Notepad++ themes), macros, user-defined languages, auto-completion, localization.

  5. 5

    Plugins

    Plugins in any language via WebAssembly, scripting, a plugin manager. Built-in Compare, JSON/XML tools, hex view.

  6. 6

    Beyond Notepad++

    LSP, a command palette, Git, an integrated terminal, multi-gigabyte files, remote editing over SSH.

Why “Birchpad”

A notepad made of birch bark

Before paper became common in medieval Novgorod, people wrote everyday notes, letters and school exercises on strips of birch bark. A boy named Onfim practised his alphabet on them and drew himself as a rider; merchants settled debts; neighbours sent their greetings.

Birch-bark letters were the notepads of their time, and Birchpad is named after them.

Questions

Frequently asked

Is it a fork of Notepad++?

No. Birchpad is written from scratch in Rust and is not affiliated with Notepad++. It follows its features and habits so that switching is painless, but the code is its own and it runs on three systems.

How ready is it?

It is an alpha. Everyday editing, search and sessions work, but expect rough edges. Themes, macros and plugins are still on the roadmap. Report bugs and ideas in GitHub Issues.

Why does Windows warn me on the first start?

Windows builds are not signed with a certificate yet: signing through SignPath is ready and will be switched on once the project has a certificate. Until then, SHA-256 checksums and GitHub build provenance show that a file is what the release workflow built.

How can I help?

Star the project on GitHub, tell your colleagues, report bugs. Code is welcome through pull requests — start with CONTRIBUTING.md.