Skip to content

okxiaochen/memo-pad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MemoPad - Enhanced Sticky Notes for macOS

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.

πŸ“Έ Screenshots

MemoPad Dashboard Dashboard with grouped notes and trash management

MemoPad Note Interface Floating note with Quill editor and settings panel

πŸ“¦ Downloads

  • 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.

✨ Features

πŸ—’οΈ Enhanced Note Taking

  • 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

πŸŽ›οΈ Window Management

  • 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

πŸ“ Organization

  • 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

πŸ—‘οΈ Trash System

  • 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

🎨 Beautiful Dashboard

  • 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

πŸš€ Installation

Quick Download (Recommended)

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

Manual Build

Prerequisites

  • macOS 10.14 or later
  • Node.js 18+ and npm

Setup Instructions

  1. Clone the repository:

    git clone <repository-url>
    cd MemoPad
  2. Install dependencies:

    npm install
  3. Start the development server:

    npm start
  4. Build for production:

    npm run build
    npm run dist

πŸ“– Usage

Creating Notes

  1. Open the dashboard (launches automatically)
  2. Click "New Note" button in the dashboard
  3. Or use the menu: Note β†’ New Note (⌘+N)
  4. Notes open at the mouse cursor position
  5. Start typing immediately - notes auto-save

Note Features

  • 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

Dashboard Features

  • 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

Keyboard Shortcuts

  • ⌘ + 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

Window Management

  • Rearrange: Menu β†’ Window β†’ Rearrange Notes
  • Reposition: Menu β†’ Window β†’ Reposition Notes
  • Collapse All: Menu β†’ Window β†’ Collapse All Notes
  • Expand All: Menu β†’ Window β†’ Expand All Notes

πŸ”§ Development

Project Structure

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

Available Scripts

  • npm start: Start development server
  • npm run dev:renderer: Start Vite dev server for renderer
  • npm run dev:main: Compile and run main process
  • npm run build: Build for production
  • npm run dist: Build and package for distribution
  • npm run type-check: Run TypeScript type checking
  • npm run lint: Run ESLint

Tech Stack

  • 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

🎯 Recent Updates

Latest Features

  • βœ… 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

Removed Features

  • ❌ Markdown support (simplified for better performance)
  • ❌ Click-through mode (temporarily disabled)
  • ❌ Layouts system (simplified UI)
  • ❌ Complex settings panels

πŸ› Troubleshooting

Common Issues

App won't start:

  • Ensure Node.js 18+ is installed
  • Try removing node_modules and running npm install again
  • 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

Debug Mode

Run with debug flags:

DEBUG=* npm start

🀝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Inspired by macOS Stickies
  • Built with the amazing Electron framework
  • Icons from Lucide React
  • UI inspiration from modern design systems

πŸ“§ Support

If you encounter any issues or have feature requests, please:

  1. Check the Issues page
  2. Create a new issue if needed
  3. Provide detailed information about your system and the problem

Made with ❀️ for macOS productivity enthusiasts

About

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.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors