# Yank Note (purocean/yn): a Markdown editor that runs your code and your AI Copilot

> Yank Note is an AGPL-3.0 Electron Markdown editor that keeps your notes as plain files on disk while adding runnable code blocks, embedded diagrams, per-file encryption and an AI Copilot. It trades security for extensibility, and that trade is the whole story.

**purocean/yn** — A highly extensible Markdown editor. Version control, AI Copilot, mind map, documents encryption, code snippet running, integrated terminal, chart embedding, HTML applets, Reveal.js, plug-in, and macro replacement.

- Repository: https://github.com/purocean/yn
- Website: https://yank-note.com
- Stars: 6,760 · Forks: 921
- Language: TypeScript
- License: AGPL-3.0
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/purocean-yn

## What Yank Note solves, and who ends up using it

Most Markdown editors stop at text. Yank Note starts there and adds the things a developer normally leaves the editor to do: run a snippet, render a diagram, query an AI model, open a terminal. The README describes it as "a highly extensible Markdown editor, designed for productivity", and the feature list backs that up: version control, an AI Copilot compatible with OpenAI, Ollama, Gemini, Kimi and Tongyi Qianwen, an OpenCode AI Agent, mind maps, document encryption, code snippet running, an integrated terminal, chart embedding, HTML applets, Reveal.js and macro replacement.

The intended user is someone who already writes in Markdown and wants the file to stay a file. Data is saved as local Markdown files, and the README states that extension features are implemented in Markdown's original syntax as far as possible. That matters if you have years of notes in a folder and no interest in a proprietary database. The editor is built on the Monaco kernel, the same editor component behind VS Code, so the editing experience is deliberately familiar.

It is not aimed at people who want a frictionless note app. The README opens its Attention section by saying that for more extendability, Yank Note sacrifices security protection, including command execution and arbitrary file reading and writing. That sentence should decide whether you keep reading.

## How the pieces fit: Monaco, local files, plugins and a Koa backend

The repository layout tells you the shape of the application. It is an Electron app: package.json points main at dist/main/app.js, the build runs tsc over src/main/app.ts, and the renderer is a Vite build of a Vue and TypeScript front end. Koa appears in the dependency list, which matches the README's mention of a backend that uses pandoc for multi-format export.

The data model is the part worth understanding before you install anything. A repository, in Yank Note's vocabulary, is a data location, and the README says multiple data locations can be defined for document classification. Your notes are ordinary files inside those locations. Version control and the history panel operate on those files rather than on a hidden store, which is why the README can promise backtracking of document history versions without describing a sync service.

Extension points are file-based. Plugins are JavaScript placed in the home directory's plugins folder, and the README points to a separate plugin development guide. Documents themselves are extension points: fenced code blocks can be executed for JavaScript, PHP, nodejs, Python and bash, and the document can embed HTML applets, PlantUML, drawio, ECharts, Mermaid and Luckysheet content. Macro replacement goes further and lets embedded JavaScript expressions rewrite document content dynamically. Each of those is a place where the editor stops being a viewer and starts being a runtime.

## Installing Yank Note and opening a first real note

The README points at the GitHub releases page for downloads, and the v3.92.1 changelog lists direct artifacts: a Windows x64 .exe, macOS arm64 and x64 .dmg files, a Linux AppImage and a Linux .deb. There is also a hosted demo at demo.yank-note.com if you want to look before installing. The App Store build is linked from the README with the note "Not recommended", which links to a GitHub issue explaining why; read that issue before paying for the store version.

If you would rather build from source, the repository is a Yarn project. The dev script starts Vite:

```bash
yarn install
yarn dev
```

The start script compiles the Electron main process first and then launches the packaged entry point:

```bash
yarn start
```

For a full production build, the build script runs the front-end build and then the main-process build:

```bash
yarn build
```

One native dependency needs attention. The scripts include rebuild-pty, which runs electron-rebuild for node-pty, the package behind the integrated terminal. If the terminal misbehaves after an Electron upgrade, that script is the documented remedy:

```bash
yarn rebuild-pty
```

After launch, create a repository pointing at a folder of existing Markdown and open a file. The README notes that files ending in .c.md are treated as encrypted files, so keep that suffix in mind when you browse a folder: opening one prompts for a password rather than showing text. Auto-save is on by default, with an orange title bar marking unsaved files, and the README states that encrypted documents are not automatically saved.

## The security trade-off is documented, not hidden

The README's Attention section is unusually direct. Because the editor supports command execution and arbitrary file reading and writing, it warns that if you open a foreign Markdown file you must carefully identify whether the content is trustworthy. This is not a theoretical concern for a format that supports runnable code blocks, HTML applets and macro replacement. A .md file from a colleague, a download or a cloned repository is executable content in this editor.

The encryption design has a matching constraint. Encryption and decryption happen at the front end, and the README says plainly that if the password is lost it can only be cracked by brute force. There is no server-side recovery path because there is no server holding your key. Combined with the rule that encrypted documents are not auto-saved, the practical workflow is: edit, then save deliberately, and keep the password somewhere other than the note itself.

The third limitation is environmental. This is an Electron desktop application with a terminal, a Koa backend and pandoc-based export. The README does not document a headless mode or a web deployment you can self-host for a team. If your requirement is a browser-based wiki with central access control, Yank Note is the wrong shape, and no amount of plugin writing changes that.

## Where Yank Note sits against Zettlr, QOwnNotes and Preview Enhanced

The closest comparisons people search for are Zettlr, QOwnNotes and Shd101wyy's Markdown Preview Enhanced. The differences are architectural rather than cosmetic.

Zettlr is built around a citation and academic-writing workflow with a Zettelkasten-style identifier system. Yank Note has no citation manager in its feature list; it has a terminal, a plugin API and an AI Copilot. If your notes are literature references, Zettlr's model fits better. QOwnNotes pairs Markdown files with ownCloud or Nextcloud sync and a scripting layer, so its centre of gravity is file sync across devices. Yank Note's centre of gravity is what happens inside the document: runnable code, embedded diagrams, applets, macros.

Markdown Preview Enhanced is a VS Code and Atom extension, so it lives inside your existing editor rather than replacing it. Yank Note is a standalone Electron application with its own file browser, terminal and version control panel. Choosing between them is largely choosing whether you want your Markdown tooling inside VS Code or beside it. Yank Note also lists Reveal.js support, which overlaps with what people use Preview Enhanced for when building slide decks from Markdown.

## Maintenance, releases and the AGPL-3.0 licence

The repository is not archived, and the last push was on 2026-09-09, which is recent. Releases are not on a fixed cadence: v3.92.1 landed on 2026-07-12, v3.90.0 on 2026-05-16 and v3.89.1 on 2026-05-06. The v3.92.1 changelog is a useful sample of what maintenance looks like in practice: a Markdown-it upgrade to 14.3.0 with CJK-friendly emphasis parsing, a raw HTML container, range-based text highlighting APIs for plugins, an Electron 41 upgrade, and fixes for double-escaped code fences, non-Markdown file restoration and IME layout offsets in the terminal. That mix of parser work, plugin API additions and Electron security updates is the upgrade cost you are signing up for.

Upgrading means tracking Electron versions, because the main process, the terminal's node-pty binding and the renderer all move together. The rebuild-pty script exists precisely because that binding needs rebuilding against Electron. Plugin authors carry a second cost: the v3.92.1 release added new highlighting APIs, and APIs added in one release can be the compatibility problem in the next.

The licence is AGPL-3.0, stated in both the LICENSE file and package.json. That is a strong copyleft licence with a network clause. If you fork Yank Note and offer a modified version to users over a network, the AGPL's source-availability terms are the question to bring to a lawyer, not to this article. Internal use of an unmodified build is a different situation from redistributing a modified one. The README does not discuss commercial licensing or an exception.

## Conclusion

Adopt Yank Note if you keep Markdown as the source of truth and want code execution, diagrams and an AI Copilot inside the same window, and you accept that opening a stranger's .md file can run commands. Do not adopt it as a sandbox for untrusted documents, and do not expect encrypted .c.md files to auto-save or to be recoverable without the password. Before committing, install v3.92.1, open a copy of a real note, check that the version control panel shows the history you expect, and confirm the plugin folder path on your platform.

## FAQ

### Is Yank Note free to use, and what licence does it ship under?

Yank Note is published under AGPL-3.0, as stated in the LICENSE file and in package.json. The README links to paid App Store distribution for the macOS build but marks it "Not recommended" with a link to a GitHub issue explaining the reasoning. The README does not describe a commercial licence or an exception to the AGPL.

### Does Yank Note run code inside my Markdown files?

Yes. The README lists code running for JavaScript, PHP, nodejs, Python and bash, along with HTML applets and macro replacement that evaluates embedded JavaScript expressions. The same README warns that the editor sacrifices security protection, including command execution and arbitrary file reading and writing, and that you should carefully judge whether a foreign Markdown file is trustworthy before opening it.

### What happens if I forget the password on an encrypted .c.md file in Yank Note?

The README states that encryption and decryption are both completed at the front end and that if the password is lost the file can only be cracked by brute force. It also notes that encrypted documents are not automatically saved, so saving is a manual step.

## Sources

- [License: AGPL-3.0](https://github.com/purocean/yn/blob/develop/LICENSE)
- [Project website](https://yank-note.com)
- [purocean/yn on GitHub](https://github.com/purocean/yn)
- [README](https://github.com/purocean/yn/blob/develop/README.md)
- [Releases](https://github.com/purocean/yn/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/purocean-yn
