A lightweight, glass-themed markdown note-taking application built with Tauri (Rust) and JavaScript.
- Markdown Editor - Full markdown support with live preview toggle
- Syntax Highlighting - Beautiful code blocks with language-specific highlighting
- Multi-tab Editing - Open and edit multiple notes simultaneously
- Auto-naming - Note titles auto-extract from first non-empty line
- Folder Organization - Create custom folders and drag notes between them
- Wiki-links - Link notes with
[[Note Title]]syntax, includes autocomplete - Backlinks Panel - See what notes link to the current note
- Tags System - Add tags to notes and filter by tag
- Undo/Redo - Per-note undo/redo history with Ctrl+Z/Ctrl+Y
- Auto-save Toggle - Enable/disable automatic saving
- Bulk Operations - Select multiple notes to delete or move
- Real-time Search - Search notes by content and title
- Dark/Light Theme - Glass-themed dark mode (default) + light mode toggle
- Glass UI - Beautiful transparent interface with blur effects
- Markdown Storage - All notes saved as plain markdown files with YAML frontmatter
- Copy/Paste - Full clipboard support in the editor
- Frontend: HTML5, CSS3, JavaScript (ES6+)
- Backend: Rust with Tauri
- Storage: Local filesystem (markdown files)
- Libraries: marked (markdown parsing), highlight.js (syntax highlighting), turndown (HTML→Markdown conversion)
curl -fsSL https://raw.githubusercontent.com/viewerofall/GlassPad/main/install.sh | bashThis will:
- Download the latest binary
- Install to
/usr/local/bin/scratchpad - Create a
.desktoplauncher - Install icons to
~/.local/share/icons
Then just run: scratchpad
# Clone the repository
git clone https://github.com/viewerofall/GlassPad.git
cd scratchpad
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run tauri buildCheck the Releases page for pre-built binaries.
- Click + Note in the toolbar or press
Ctrl+N - Type your content - the first non-empty line becomes the title automatically
- Notes auto-save every 2 seconds when auto-save is enabled
- Manually save with
Ctrl+Sor the save button
- Bold:
**text**orCtrl+B - Italic:
*text*orCtrl+I - Underline:
<u>text</u> - Bullet points: Start line with
-or click the bullet button - Headings: Start line with
##or click the H2 button - Code blocks:
```language code here```
- Type
[[to see a dropdown of note titles - Select a note to create a link:
[[Note Title]] - In Preview mode, click the link to jump to that note
- Use the backlinks panel to see what notes link to you
- Create folders with the + button in the sidebar
- Drag notes and folders to reorder them
- Delete notes/folders with the × button (shows themed confirmation)
- Bulk select notes with the ☑ Select button, then delete or move them
- Click the 🌙 moon icon in the titlebar to toggle between dark and light themes
- Theme preference is saved automatically
Ctrl+N- New noteCtrl+S- Save current noteCtrl+W- Close current tabCtrl+B- BoldCtrl+I- ItalicCtrl+U- UnderlineCtrl+Z- UndoCtrl+Y/Ctrl+Shift+Z- Redo
Notes are stored as markdown files with YAML metadata in:
- Linux:
~/.scratchpad/notes/ - Windows:
%USERPROFILE%\.scratchpad\notes\ - macOS:
~/.scratchpad/notes\
Each note is a .md file with frontmatter containing metadata (id, title, folder, tags, timestamps).
# Install Tauri dependencies
cd src-tauri
cargo build
# Return and run dev server
cd ..
npm run dev
# Watch for changes and rebuild
npm run tauri devReleases are automatically built and published for Linux, macOS, and Windows via GitHub Actions.
To create a release:
# Tag a commit (e.g., v1.0.0)
git tag v1.0.0
git push origin v1.0.0This triggers the GitHub Actions workflow which:
- Builds binaries for Linux (x86_64)
- Builds for macOS (x86_64 + ARM64)
- Builds for Windows (x86_64)
- Creates a GitHub release with all artifacts
- Users can then install with:
curl -fsSL https://raw.githubusercontent.com/viewerofall/GlassPad/main/install.sh | bash
Contributions are welcome! Please discuss what you're working on first.
Currently feature-complete. This project may be archived.
- Built with Tauri
- Inspired by Obsidian and Notion
- Glass UI design using CSS backdrop-filter