Yank Note is an extensible Markdown editor available on all major desktop platforms. It can be run locally as a native application or accessed directly through a web browser. At its core is the Monaco editor—the same engine that powers VS Code—specifically optimized for the Markdown experience.
Key Features
Yank Note is far more than a basic notepad. It includes a suite of tools that bridge the gap between a standard text editor and a lightweight integrated development environment (IDE).
.c.md extension are automatically password-protected. Decryption is handled locally within the app or browser to ensure privacy.A Note on Security
Yank Note prioritizes functionality over sandbox restrictions. Because plugins and code blocks have the authority to read files and execute system commands, security is a shared responsibility. You should treat Markdown files from untrusted sources with the same level of caution as an executable .exe file.
Additionally, if you use the built-in encryption, ensure you do not lose your password. There are no recovery backdoors; if a password is forgotten, brute-forcing the file is the only way to regain access.
Plugins: Customizing Your Editor
The architecture of Yank Note is centered on a robust plugin system. In fact, most core features—such as the terminal, graph renderers, and AI integration—are implemented as plugins. This means the same API used by the developers is fully available to you for customization.
Step-by-Step: Creating Your First Plugin
plugins folder and create a new file named plugin-hello.js.window.registerPlugin({
name: 'plugin-hello',
register: ctx => {
ctx.statusBar.tapMenus(menus => {
menus['plugin-hello'] = {
id: 'plugin-hello',
position: 'left',
title: 'HELLO',
onClick: () => {
ctx.ui.useToast().show('info', 'HELLO WORLD!');
}
}
})
}
});
Core Concepts
The plugin system is driven by two primary mechanisms: Hooks and Actions.
ctx.registerHook and trigger them via ctx.triggerHook. Some internal hooks are "interruptible"—if a handler returns true, it stops subsequent handlers from executing. Common hooks include ACTION_BEFORE_RUN and VIEW_KEY_DOWN.ctx.action object manages named commands. You can find a full list of internal actions in the official API documentation.Interacting with the Plugin API
The ctx object serves as your primary entry point for customization. To explore the modules and functions available to you, run the following snippet directly inside an editor code block:
// --run-- --no-worker--
console.log(Object.keys(ctx).join('\n'))
For quick modifications, you don’t even need to build a formal plugin. The code runner exposes ctx globally, allowing for one-liners like this:
// --run-- --no-worker--
ctx.ui.useToast().show("info", "HELLO WORLD!")
If you want to add a small interactive element to a specific note, you can embed an applet using HTML:
<!-- --applet-- -->
<button onclick="ctx.ui.useToast().show(`info`, `HELLO WORLD!`)">HELLO</button>
Sharing Your Work
If you develop a theme or plugin that could benefit the community, you can find documentation on how to distribute your extensions at [github.com/purocean/yank-note-extension](github.com/purocean/yank-note-extension#readme).
Yank Note is designed for users who want total control over their writing environment. It doesn't impose a specific workflow; instead, it provides the engine and the tools for you to build your own.
ClipSketch AI: Frame-Accurate Video Tagging & AI Storyboard Generation
SPV VPN: Fast, Stable, and One-Click Unlimited Access
Web Codegen Scorer: Test AI-Generated Web Code Quality Before You Ship
Lanjing VPN Review: Unlimited Traffic, CN2 Lines, and Smart Routing
VibeVoice: Long-Form Multi-Speaker TTS for Natural Dialogue Generation
AhaSpeed VPN Review: High-Speed Performance, No Ads, and Unlimited Bandwidth
AoxVPN 8.8 Member Day Sale | No-Log VPN Featuring IEPL Private Lines
Zettlr Setup and Developer Guide (macOS, Windows, Linux)
Flameshot CLI Guide: Capture, Edit, and Upload Screenshots Rapidly
syftr: Optimize Agent Workflows with Pareto Front Search
II-Agent Review: An Open-Source LLM Assistant Built for Autonomous Tasks
DeerFlow: Modular Multi-Agent Research With LangGraph and MCP