Skip to content

Repository files navigation

VibeNotes πŸ“βš‘

A lightweight, developer-focused Windows desktop application inspired by Windows Sticky Notes, with native Markdown editing, syntax-highlighted collapsible code blocks, SQLite persistence, and native Windows Startup / System Tray integration.

Built with Tauri v2 + Rust + React 19 + TypeScript + Tailwind CSS (Under 40 MB idle RAM, zero Chromium bloat).


πŸ“Έ Screenshots

πŸͺŸ Floating Desktop Sticky Notes

Multi-theme floating notes with interactive checklists, VS Code Dark+ code blocks, and markdown tables:

VibeNotes Floating Sticky Notes


πŸ—„οΈ Central Notes Hub

Search notes, filter by color, toggle card sizes, and manage your entire workspace:

VibeNotes Hub


πŸ”„ Seamless In-App Updates

Check for GitHub releases, view changelogs, download signed updates, and restart with one click:

VibeNotes Auto-Update


✨ Features

  • πŸͺŸ Floating Frameless Sticky Notes: Custom drag regions, real-time coordinate & size persistence, and per-note "Always on Top" pin.
  • πŸš€ Windows Startup & System Tray: Run in background with a native tray context menu (New Note, Notes Hub, Show/Hide All, Startup Toggle, Exit).
  • 🎨 7 Color Themes: Classic Yellow, Mint Green, Pastel Pink, Lavender Purple, Sky Blue, Charcoal Dark, and Slate Grey.
  • πŸ’» Developer Markdown & Code Blocks:
    • Multi-language syntax highlighting with VS Code Dark+ styling.
    • Collapsible / Expandable long code snippets with line count badges.
    • One-click "Copy Code" button.
    • Interactive checklists with nested task lists (Tab / Shift+Tab).
    • Tables, blockquotes, links, and drag-and-drop image support.
  • πŸ—„οΈ Central Notes Hub: Search, filter by color, archive, or permanently delete notes, with a toggleable card size view (Small, Medium, Large).
  • πŸ“€ Markdown Export (.md): Export any note directly from its thumbnail in the Notes Hub into a formatted Markdown file via a native Windows "Save As" dialog, preserving headings, checklists, code blocks, tables, images, and inline styles.
  • πŸ”„ In-App Auto-Updates: Seamless GitHub Releases integration with Tauri v2 updater. Checks for new releases, displays changelogs, validates cryptographic signatures, downloads in background, and relaunches smoothly.
  • πŸ”’ Single Instance Protection: Native Windows Kernel Mutex ensures only one instance runs at a time.
  • πŸ€– Model Context Protocol (MCP) Server: Manage your sticky notes with any AI agent (Antigravity, Claude Desktop, Cursor, Claude Code, Cline) with full support for tables, code blocks, checklists, and themes!
  • πŸ’Ύ SQLite Storage: Crash-resilient local database with Write-Ahead Logging (WAL) stored in %APPDATA%/VibeNotes/vibenotes.db.

πŸ€– Model Context Protocol (MCP) Server

VibeNotes features a built-in, native Rust Model Context Protocol (MCP) server embedded directly inside the vibenotes.exe binary.

This enables any AI coding assistant or autonomous agent (Google Antigravity, Claude Desktop, Cursor, Claude Code, Cline, Windsurf, etc.) to create and manage your desktop sticky notes in real time over standard I/O (stdio) with zero runtime dependencies (no Node.js or npm needed!).

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                       vibenotes.exe                         β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚    Standard App Launch       β”‚       `--mcp` Flag           β”‚
β”‚   (Double-click or Startup)  β”‚   (Launched by AI Agent)     β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  β€’ Floating Sticky Notes GUI β”‚  β€’ Embedded Rust MCP Server  β”‚
β”‚  β€’ System Tray Menu          β”‚  β€’ Stdio JSON-RPC 2.0 Loop   β”‚
β”‚  β€’ Central Notes Hub         β”‚  β€’ Zero Node.js Required     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚                              β”‚
               β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                              β–Ό
                %APPDATA%/VibeNotes/vibenotes.db
                  (SQLite Concurrent WAL Mode)

βš™οΈ Client Configurations (Ready to Paste)

1. Claude Desktop

Add to %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "vibenotes": {
      "command": "C:/Program Files/VibeNotes/vibenotes.exe",
      "args": ["--mcp"]
    }
  }
}

(In development, point to d:/Dev/VibeCoding/VibeNotes/src-tauri/target/release/vibenotes.exe)

2. Google Antigravity & Cursor

Add to your project or user .gemini/antigravity/mcp.json or .cursor/mcp.json:

{
  "mcpServers": {
    "vibenotes": {
      "command": "C:/Program Files/VibeNotes/vibenotes.exe",
      "args": ["--mcp"]
    }
  }
}

3. Claude Code CLI

claude mcp add vibenotes -- "C:/Program Files/VibeNotes/vibenotes.exe" --mcp

4. Cline / Roo Code / Windsurf

Add to your MCP Settings:

{
  "mcpServers": {
    "vibenotes": {
      "command": "C:/Program Files/VibeNotes/vibenotes.exe",
      "args": ["--mcp"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

πŸ’‘ Tip: If you are developing locally without installing, replace "C:/Program Files/VibeNotes/vibenotes.exe" with your local build path: "d:/Dev/VibeCoding/VibeNotes/src-tauri/target/release/vibenotes.exe".


πŸ› οΈ Available MCP Tools & Commands

Tool Description Parameters
create_note Creates a new floating sticky note with rich markdown. content (Markdown string with tables, code blocks, checklists), title (optional), color_theme (yellow, green, pink, purple, blue, charcoal, grey), is_pinned (bool), is_always_on_top (bool)
update_note Updates markdown content, title, theme, pin, or always-on-top status. id (required), content, title, color_theme, is_pinned, is_always_on_top
append_note_content Appends markdown text, code blocks, tables, or task items to an existing note. id (required), content (required)
manage_checklist Checks, unchecks, toggles, or adds tasks directly without rewriting the note. id (required), action (list, check, uncheck, toggle, add_item), item_index (0-based int), item_text (match query), new_item_text
list_notes Lists active or archived notes with search, color filtering, and live task completion stats. search (query string), color_theme, include_archived (bool)
get_note Retrieves complete note details, raw markdown, and checklist breakdown. id (required)
delete_note Removes a sticky note (archives by default, or permanently deletes). id (required), permanent (bool, default: false)
restore_note Restores an archived sticky note back to the active desktop workspace. id (required)

πŸ’‘ Example AI Agent Prompts to Try

  • πŸ“ "Create a blue sticky note titled 'Sprint 42 Deliverables' with a checklist for today's tasks."
  • β˜‘οΈ "Mark the task 'Deploy migration' as done in my Sprint note."
  • πŸ’» "Create a charcoal sticky note with this Rust concurrency snippet."
  • πŸ“Š "Add a markdown table comparing SQLite vs PostgreSQL to my Architecture note."
  • πŸ” "List all my active sticky notes and show which ones have pending tasks."
  • πŸ—„οΈ "Archive my meeting notes from yesterday."

πŸš€ Quick Start Guide

1. Prerequisites

Make sure you have the following installed on Windows:

  1. Node.js (v18 or higher)
  2. Rust & Cargo (rustup with the x86_64-pc-windows-msvc toolchain)
  3. C++ Build Tools (from Visual Studio Installer)
  4. Microsoft Edge WebView2 (pre-installed by default on Windows 10/11)

2. Clone & Install Dependencies

# Clone repository
git clone https://github.com/vahabahmadvand/VibeNotes.git
cd VibeNotes

# Install frontend dependencies
npm install

3. Run in Development Mode

Starts the live development server with hot-reloading:

npm run tauri dev

4. Build Standalone Executable (.exe) & Installer

To compile an optimized, standalone Windows executable:

npm run tauri build

Once the build finishes:

  • Standalone .exe: src-tauri/target/release/vibenotes.exe (~18 MB)
  • NSIS Setup Installer: src-tauri/target/release/bundle/nsis/VibeNotes_0.5.0_x64-setup.exe
  • MSI Installer: src-tauri/target/release/bundle/msi/VibeNotes_0.5.0_x64_en-US.msi

You can take vibenotes.exe and run it anywhere on Windows without installing anything!


πŸ› οΈ Project Structure

VibeNotes/
β”œβ”€β”€ docs/                      # Screenshots & assets for README
β”‚   └── screenshots/
β”‚       β”œβ”€β”€ sticky-notes-preview.png
β”‚       β”œβ”€β”€ notes-hub-preview.png
β”‚       └── auto-update-preview.png
β”œβ”€β”€ src/                       # React 19 Frontend
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ StickyNote.tsx     # Floating frameless sticky note window
β”‚   β”‚   β”œβ”€β”€ NotesHub.tsx       # Central searchable notes manager
β”‚   β”‚   β”œβ”€β”€ UpdateModal.tsx    # In-app update & changelog dialog
β”‚   β”‚   β”œβ”€β”€ CodeBlockView.tsx  # Syntax-highlighted code block with collapse/expand
β”‚   β”‚   β”œβ”€β”€ FormatToolbar.tsx  # WYSIWYG markdown formatting bar
β”‚   β”‚   β”œβ”€β”€ ThemePicker.tsx    # 7-color palette switcher
β”‚   β”‚   └── DeleteConfirmModal.tsx # Delete confirmation dialog
β”‚   β”œβ”€β”€ utils/
β”‚   β”‚   └── markdown.ts        # TipTap to Markdown converter & filename sanitizer
β”‚   β”œβ”€β”€ styles/
β”‚   β”‚   └── globals.css        # Themes & custom CSS tokens
β”‚   β”œβ”€β”€ App.tsx                # Route switcher (#/note/:id vs #/hub)
β”‚   β”œβ”€β”€ main.tsx               # Frontend entrypoint
β”‚   └── types.ts               # Shared TypeScript models
β”œβ”€β”€ src-tauri/                 # Rust Backend (Tauri v2)
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ main.rs            # Application entrypoint & Windows subsystem
β”‚   β”‚   β”œβ”€β”€ lib.rs             # App setup, tray setup, and window restoration
β”‚   β”‚   β”œβ”€β”€ autostart.rs       # Windows Registry HKCU Run key manager
β”‚   β”‚   β”œβ”€β”€ tray.rs            # Native System Tray menu & event dispatcher
β”‚   β”‚   β”œβ”€β”€ db.rs              # SQLite connection pool, WAL mode, migrations
β”‚   β”‚   β”œβ”€β”€ commands.rs        # Tauri IPC commands & multi-window manager
β”‚   β”‚   └── models.rs          # Data structures
β”‚   β”œβ”€β”€ Cargo.toml             # Rust dependencies (rusqlite, winreg, tauri v2)
β”‚   └── tauri.conf.json        # Tauri configuration & capabilities
β”œβ”€β”€ package.json
└── tailwind.config.js

πŸ“„ License

MIT License. Free for personal and commercial use.

About

A lightweight, developer-focused Windows desktop application inspired by Windows Sticky Notes, with native Markdown editing, syntax-highlighted collapsible code blocks, SQLite persistence, and native Windows Startup / System Tray integration. Vibe-coded with @google-antigravity

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages