MemoPad is a powerful, modern alternative to the built-in macOS Stickies app. It provides floating notes with advanced window management, group organization, and a beautiful dashboard interface.
Dashboard with grouped notes and trash management
Floating note with Quill editor and settings panel
- Latest Release: GitHub Releases
- Apple Silicon DMG: Optimized for M1/M2/M3 MacBooks
- Source Code: Clone the repository for development
- Since itβs developed with Electron, it should theoretically support all platforms, but I havenβt tested it on others.
- Floating Notes: Each note floats on top of other windows
- Custom Colors: Set unique background colors for each note
- Transparency: Adjustable opacity (80% default) for each note
- Auto-save: Notes save automatically as you type
- Position Memory: Notes remember their position and size
- Always on Top: Keep notes visible while working
- Collapse/Expand: Collapse notes to just the title bar
- Collapse All/Expand All: Quickly manage all notes at once
- Rearrange: Automatically arrange all visible notes
- Reposition: Restore original positions and collapse states
- Groups: Organize notes into color-coded groups
- Drag & Drop: Easily move notes between groups
- Ungrouped Notes: Notes without groups are shown separately
- Group Management: Create, edit, and delete groups
- Soft Delete: Deleted notes go to trash first
- Restore: Bring back accidentally deleted notes
- Permanent Delete: Clean up when you're sure
- Empty Trash: Clear all deleted notes at once
- Trash Preview: See note content and group info in trash
- Simplified Interface: Clean, focused design
- Grouped View: See notes organized by groups
- Trash Management: Restore or permanently delete notes
- Quick Actions: Create notes and groups easily
For Apple Silicon MacBooks (M1/M2/M3):
- Download the latest DMG from GitHub Releases
- Open the DMG file and drag MemoPad to your Applications folder
- Launch MemoPad from Applications
- macOS 10.14 or later
- Node.js 18+ and npm
-
Clone the repository:
git clone <repository-url> cd MemoPad
-
Install dependencies:
npm install
-
Start the development server:
npm start
-
Build for production:
npm run build npm run dist
- Open the dashboard (launches automatically)
- Click "New Note" button in the dashboard
- Or use the menu: Note β New Note (β+N)
- Notes open at the mouse cursor position
- Start typing immediately - notes auto-save
- Auto-save: Notes save automatically as you type
- Settings Panel: Click the gear icon (β) to customize:
- Background color
- Window opacity (50% - 100%)
- Always on top behavior
- Collapse: Click the collapse button (β²/βΌ) to minimize to title bar
- Close: Click the Γ button to close the note
- New Note: Create a new note at mouse position
- New Group: Create a new group for organizing notes
- Close: Hide the dashboard window
- Group Management:
- Create groups with custom names and colors
- Delete groups (with confirmation for notes)
- Delete all notes in a group
- Trash Management:
- Restore individual notes
- Permanently delete notes
- Empty entire trash
β + N: Create new noteβ + W: Close current noteβ + ,: Open settings (in note window)β + Alt + C: Collapse all notesβ + Alt + E: Expand all notesβ + Alt + F: Toggle always on topβ + Alt + T: Toggle opacity
- Rearrange: Menu β Window β Rearrange Notes
- Reposition: Menu β Window β Reposition Notes
- Collapse All: Menu β Window β Collapse All Notes
- Expand All: Menu β Window β Expand All Notes
MemoPad/
βββ src/
β βββ main/ # Electron main process
β β βββ main.ts # Main application logic
β β βββ preload.ts # Secure API bridge
β βββ renderer/ # Renderer processes
β βββ dashboard.html # Dashboard window
β βββ dashboard.jsx # Dashboard React app
β βββ note-react.html # Note window
β βββ note.jsx # Note window React app
βββ assets/ # App icons and assets
βββ dist/ # Built files
βββ package.json
βββ README.md
npm start: Start development servernpm run dev:renderer: Start Vite dev server for renderernpm run dev:main: Compile and run main processnpm run build: Build for productionnpm run dist: Build and package for distributionnpm run type-check: Run TypeScript type checkingnpm run lint: Run ESLint
- Electron: Desktop app framework
- React: UI library for dashboard and notes
- TypeScript: Type-safe JavaScript
- Vite: Fast build tool
- electron-store: Data persistence
- CSS Grid/Flexbox: Layout and styling
- β Simplified dashboard interface
- β Improved note window positioning
- β Enhanced group management
- β Better trash system with previews
- β Collapse/expand functionality
- β Window management shortcuts
- β Auto-save improvements
- β Default 80% opacity for new notes
- β Markdown support (simplified for better performance)
- β Click-through mode (temporarily disabled)
- β Layouts system (simplified UI)
- β Complex settings panels
App won't start:
- Ensure Node.js 18+ is installed
- Try removing
node_modulesand runningnpm installagain - Check for permission issues
Notes not saving:
- Check if the app has write permissions
- Restart the application
- Check console for error messages
Poor performance:
- Reduce the number of open notes
- Lower opacity for transparent notes
- Close other resource-intensive applications
Run with debug flags:
DEBUG=* npm start- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Inspired by macOS Stickies
- Built with the amazing Electron framework
- Icons from Lucide React
- UI inspiration from modern design systems
If you encounter any issues or have feature requests, please:
- Check the Issues page
- Create a new issue if needed
- Provide detailed information about your system and the problem
Made with β€οΈ for macOS productivity enthusiasts