#sqlite #clipboard #notifications #tui

app clipboard-monitor

Clipboard monitoring and history with notifications and SQLite storage

1 stable release

1.0.1 Dec 7, 2025

#125 in #clipboard

MIT license

220KB
569 lines

📋 Clipboard Monitor (clipmon)

Crates.io Docs.rs License: MIT

🚀 A command-line clipboard monitoring tool with history, notifications, and SQLite storage.


✨ Features

  • Real-time monitoring of clipboard changes
  • SQLite database for persistent clipboard history
  • TUI interface to browse, search, and copy history
  • Notifications via Growl / notify-rust
  • Word and character count per entry
  • Cross-platform (Linux, Windows, macOS)

📦 Installation

Install directly from crates.io:

cargo install clipboard-monitor

Or build locally:

git clone https://github.com/cumulus13/clipmon-rust
cd clipboard-monitor
cargo install --path .

▶️ Usage

Run the binary:

clipmon

Commands inside the app

  • h → Show clipboard history (TUI)
  • q → Quit
  • Arrow keys → Navigate history
  • Enter → Copy selected entry back to clipboard

🖼️ Example TUI Screen

+-------------------------------------------------------------+
| Clipboard History                                           |
+----+---------------------+----------------------+-----+-----+
| ID | Timestamp           | Preview              | Chars | Words |
+----+---------------------+----------------------+-----+-----+
|  1 | 2025-12-07 18:59:12 | Hello world...       |   11 |    2 |
|  2 | 2025-12-07 18:59:45 | Rust is awesome...   |   15 |    3 |
+-------------------------------------------------------------+

⚙️ Configuration

Environment Variables

Enable debug mode with:

DEBUG=1 clipmon

Accepted values: 1, true, ok, yes.

Database Path

By default, clipboard history is stored in:

clipboard_data.db

You can change this by editing the source or passing a different path when initializing ClipboardMonitor.

Icon Path

The application attempts to load an icon (clipmon.png) from several locations:

  • Same directory as the executable
  • icons/clipmon.png
  • resources/clipmon.png
  • Current working directory
  • Fallback: clipmon.png

This icon is used for notifications. Place your custom icon in one of these paths to override.


📜 Author & License

MIT © Hadi Cahyadi

Buy Me a Coffee

Donate via Ko-fi

Support me on Patreon


Dependencies

~31–63MB
~1M SLoC