mono-clip Svelte Themes

Mono Clip

๐Ÿ’ A blazing-fast macOS clipboard manager built with Tauri + Svelte

MonoClip โ€” Your clipboard, finally under control



A blazing-fast, macOS-native clipboard manager that lives in your menu bar and gets out of your way.




MonoClip app screenshot




โœจ Why MonoClip?

You know that feeling when you copy something important, then copy something else, and the first thing is gone forever? Yeah. That ends today.

MonoClip sits quietly in your menu bar, remembers everything you copy, and lets you retrieve any past clip in under a second. No subscriptions. No cloud. No nonsense. Just your clipboard, supercharged.


๐Ÿš€ Features

๐Ÿ“ Smart Folders

Create custom folders for anything โ€” Code Snippets, Email Templates, Links, Passwords. Your clips, your structure.

โŒจ๏ธ Global Shortcut Routing

Assign a hotkey to any folder. Press it and whatever you have selected (or in your clipboard) flies straight into that folder. No window, no friction.

Type to filter across all your clips instantly. Find that thing you copied six weeks ago in under a second.

๐Ÿ–ผ๏ธ Images & Files

Copy an image โ€” see the thumbnail. Copy a file or folder in Finder โ€” get the full path. MonoClip captures it all.

๐ŸŽจ macOS-Native Design

Glass-morphism floating panel. Frosted blur. Spring animations. It looks like it belongs on your Mac because it was built for your Mac.

๐Ÿ“Œ Pin Important Clips

Some things you need forever. Pin them. They stay safe even when auto-cleanup runs.

๐Ÿงน Auto-Cleanup

Set it and forget it. MonoClip automatically removes old unpinned clips to keep your history lean.

๐Ÿค– AI-Ready CLI

mclip ships with the app. Use it in your terminal, pipe clips into commands, or give your AI assistant instant access to your clipboard history.


๐ŸŽฌ See It In Action

1. Copy anything                    โŒ˜C
2. Copy something else              โŒ˜C
3. Open MonoClip                    โŒ˜โ‡งV
4. Pick what you actually wanted    โ†‘โ†“ + Enter
5. It's pasted                      โœจ

With folder shortcuts: Select text in any app โ†’ press your shortcut โ†’ it's saved. Done. You never even had to open MonoClip.


๐Ÿ“ฆ Installation

brew tap nokhodian/tap
brew install --cask mono-clip

That's it. Homebrew handles everything โ€” download, verify checksum, install the .app.

Option B โ€” Direct Download

Grab the latest .dmg from the Releases page:

  1. Download MonoClip_0.2.0_aarch64.dmg
  2. Open the .dmg and drag MonoClip.app to /Applications
  3. Launch from Spotlight or /Applications

Apple Silicon only โ€” the current release targets aarch64. Intel builds coming soon.

Option C โ€” Build from Source

Prerequisites:

Tool Version Install
Rust 1.77+ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Node.js 18+ nodejs.org or brew install node
pnpm latest npm i -g pnpm
Xcode CLT latest xcode-select --install
git clone https://github.com/nokhodian/mono-clip.git
cd mono-clip
pnpm install
cargo tauri dev           # dev mode
# โ€” OR โ€”
cargo tauri build         # โ†’ src-tauri/target/release/bundle/macos/MonoClip.app

๐Ÿ’ก The first build takes a few minutes while Rust compiles all dependencies.


๐Ÿ”‘ Keyboard Shortcuts

Shortcut Action
โŒ˜โ‡งV Open / close MonoClip
โ†‘ โ†“ Navigate clips
Enter Copy selected clip (+ auto-paste)
P Pin / unpin selected clip
โŒซ Delete selected clip
โŒ˜F or / Focus search
Esc Close window
โŒ˜โŒฅ1 (custom) Save clipboard โ†’ folder

๐Ÿ“ Setting Up Folder Shortcuts

  1. Open MonoClip (โŒ˜โ‡งV)
  2. Click + New Folder in the sidebar
  3. Name it, pick an emoji and color
  4. Click the shortcut field and press your combo (e.g. โŒ˜โŒฅ1)
  5. Save โ€” that's it!

Now, whenever you have text selected in any app (or just something in your clipboard), press your shortcut and it's saved to that folder instantly.

Pro tip: MonoClip is smart about selection. If you have text highlighted, it captures that โ€” not whatever happens to be in your clipboard. Perfect for grabbing snippets while reading docs.


๐Ÿ–ฅ๏ธ mclip โ€” Terminal CLI

mclip installs automatically with the app. Set it up once:

# In Settings โ†’ Install mclip CLI
# Then add to your shell profile:
export PATH="$HOME/.local/bin:$PATH"

Then use it anywhere:

mclip list                          # recent inbox items
mclip list --folder Work            # specific folder
mclip list --search http            # search across clips
mclip add "text"                    # add a clip
mclip add "text" --folder Work      # add to a folder
mclip get <id>                      # print raw content
mclip get <id> | pbcopy             # pipe back to clipboard
mclip remove <id>                   # delete a clip
mclip pin <id>                      # pin a clip
mclip folder list                   # list all folders
mclip folder add "Name"             # create a folder
mclip folder remove "Name"          # delete a folder

๐Ÿค– Use with AI

MonoClip gives your AI coding assistant full access to your clipboard history.

Copy context (works with any AI)

Open Help โ†’ Use with AI in the app and click Copy AI Context. Paste it into any chat window โ€” Claude, Cursor, ChatGPT โ€” or save it to CLAUDE.md / .cursorrules. The AI will then understand all mclip commands and can manage your clipboard on your behalf.

# Or from the terminal:
mclip context

MCP server (Claude Desktop, Cursor, Windsurf)

mclip mcp starts a JSON-RPC stdio server that exposes your clipboard as native AI tools โ€” no copy-paste needed.

Add this to ~/.config/claude/claude_desktop_config.json:

{
  "mcpServers": {
    "mclip": {
      "command": "mclip",
      "args": ["mcp"]
    }
  }
}

Available tools: list_clips, add_clip, get_clip, remove_clip, pin_clip, list_folders, create_folder, delete_folder.


๐Ÿ—๏ธ Tech Stack

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   MonoClip v0.2                     โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  Frontend         โ”‚  Svelte 5 (runes) + Vite        โ”‚
โ”‚  Styling          โ”‚  Tailwind CSS 3                  โ”‚
โ”‚  App Framework    โ”‚  Tauri 2                         โ”‚
โ”‚  Backend          โ”‚  Rust                            โ”‚
โ”‚  Database         โ”‚  SQLite (rusqlite, WAL mode)     โ”‚
โ”‚  Clipboard        โ”‚  tauri-plugin-clipboard-manager  โ”‚
โ”‚  Shortcuts        โ”‚  tauri-plugin-global-shortcut    โ”‚
โ”‚  Autostart        โ”‚  tauri-plugin-autostart          โ”‚
โ”‚  CLI              โ”‚  clap + rusqlite (standalone)    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Why Tauri over Electron?

Tauri Electron
Binary size ~8 MB ~150 MB
RAM usage ~30 MB ~300 MB
Startup time < 200ms ~2 seconds
Backend language Rust ๐Ÿฆ€ Node.js
Native feel โœ… Mostly

๐Ÿ—‚๏ธ Project Structure

mono-clip/
โ”œโ”€โ”€ src/                          # Svelte frontend
โ”‚   โ”œโ”€โ”€ App.svelte                # Root shell + event listeners
โ”‚   โ”œโ”€โ”€ lib/
โ”‚   โ”‚   โ”œโ”€โ”€ api/tauri.ts          # Typed Tauri command wrappers
โ”‚   โ”‚   โ”œโ”€โ”€ components/           # UI components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ClipCard.svelte
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Sidebar.svelte
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ SearchBar.svelte
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ HelpPanel.svelte
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ SettingsPanel.svelte
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”‚   โ””โ”€โ”€ stores/               # Svelte 5 rune-based state
โ”‚   โ””โ”€โ”€ app.css                   # Tailwind + CSS vars
โ”‚
โ””โ”€โ”€ src-tauri/                    # Rust backend
    โ””โ”€โ”€ src/
        โ”œโ”€โ”€ main.rs               # App entry, plugin setup
        โ”œโ”€โ”€ db/                   # SQLite: models, queries, migrations
        โ”œโ”€โ”€ clipboard/            # Background watcher + type detection
        โ”œโ”€โ”€ commands/             # Tauri IPC commands
        โ”œโ”€โ”€ shortcuts/            # Global shortcut manager
        โ”œโ”€โ”€ tray/                 # Menu bar tray
        โ”œโ”€โ”€ window/               # Window positioning
        โ””โ”€โ”€ bin/mclip.rs          # Standalone CLI binary

๐Ÿ” Privacy

MonoClip is 100% local. Your clipboard data:

  • โœ… Stored only in ~/.monoclip/monoclip.db on your machine
  • โœ… Never sent anywhere, ever
  • โœ… No analytics, no telemetry, no accounts
  • โœ… You can delete everything by deleting that one file

macOS Permissions required:

  • Accessibility โ€” for simulating paste (โŒ˜V) after you copy a clip
  • Input Monitoring โ€” for global keyboard shortcuts

Both are requested via standard macOS system dialogs on first use.


๐Ÿ›ฃ๏ธ Roadmap

  • Rich text + HTML clip support
  • iCloud sync (opt-in)
  • Clip templates / snippets with variables
  • Multiple window themes
  • Plugin system
  • Image clipboard capture with thumbnails
  • File & folder path capture
  • mclip CLI with AI context + MCP server
  • Multi-folder organization
  • Global shortcut routing
  • Selected text capture
  • Auto-cleanup
  • Keyboard-first navigation
  • Glass-morphism UI

๐Ÿค Contributing

PRs welcome! Here's how to get started:

git clone https://github.com/nokhodian/mono-clip.git
cd mono-clip
pnpm install
cargo tauri dev

Please open an issue first for large changes so we can discuss the approach.


๐Ÿ“„ License

MIT ยฉ nokhodian


If MonoClip saves you even one frustrated โŒ˜Z a day, consider giving it a โญ

Made with ๐Ÿฆ€ Rust, โค๏ธ and too much coffee.

Top categories

Loading Svelte Themes