Stash

macOS menu-bar app

Code you'll want again,
a keystroke away.

Press ⌘⇧K from any app to capture a snippet. Find it and copy it back just as fast. Every note is a plain Markdown file you own — no database, no account.

Free & open source · Signed auto-updates · Apple Silicon & Intel

First launch on macOS

Stash isn't notarized yet, so macOS quarantines it on download. After dragging it to Applications, run this once in Terminal, then open it:

xattr -cr /Applications/Stash.app

The loop

Stash in two seconds. Find it in two seconds.

  1. 01

    Capture

    Hit ⌘⇧K anywhere. Paste code and the language is auto-detected. ⌘⏎ saves and you're back where you were.

  2. 02

    Find

    Full-text search as you type, or the ⌘K command palette to jump straight to any note — keyboard only.

  3. 03

    Reuse

    One click copies the snippet. Notes with {{placeholders}} ask you to fill them in first.

// capture

Quick capture from anywhere

A global hotkey drops a capture window over whatever you're doing. Stash a snippet without breaking flow, then expand it into the full app if you want more room.

// own

Your notes are just files

Each note is a Markdown file in a folder you choose. Point it at iCloud or a Git repo and you've got sync — no server, no lock-in, greppable forever.

// highlight

Real syntax highlighting

CodeMirror-powered highlighting for ten languages, light and dark themes, and language auto-detection the moment you paste.

// find

Search & command palette

Instant full-text search over titles, bodies and tags. ⌘K opens a fuzzy palette to jump to notes or run actions — no mouse required.

// reuse

Snippets that are templates

Drop {{name}} placeholders into a note. On copy, Stash asks for the values and hands back a filled-in snippet.

// update

Signed auto-updates

Updates are delivered straight from GitHub Releases and verified with a minisign signature. No App Store, no manual reinstall.

Nothing to lock in

A note is a file you can read.

Metadata lives in YAML frontmatter; the snippet is a fenced code block. Open it in any editor, render it on GitHub, back it up by copying a folder.

  • Plain Markdown, human-readable
  • Tags, pins & usage in frontmatter
  • Sync via iCloud, Dropbox or Git
debounce-helper.md
---
title: Debounce helper
language: javascript
tags: [utils, react]
pinned: true
copies: 12
---

```javascript
export const debounce = (fn, ms) => { /* … */ };
```
Stash icon

Keep your code a keystroke away.

macOS 12+. Free and open source.