{"id":22316447,"url":"https://github.com/kaishuu0123/leavepad","last_synced_at":"2026-04-19T00:17:30.954Z","repository":{"id":260471657,"uuid":"881393454","full_name":"kaishuu0123/leavepad","owner":"kaishuu0123","description":"A simple note-taking app with integrated file editor, built with Electron and Monaco Editor","archived":false,"fork":false,"pushed_at":"2026-04-17T11:48:30.000Z","size":32139,"stargazers_count":3,"open_issues_count":7,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-17T12:35:13.104Z","etag":null,"topics":["cross-platform","editor","electron","multiplatform","notepad","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kaishuu0123.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-31T13:40:28.000Z","updated_at":"2026-04-17T11:48:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"33060e57-4c14-47bf-b1fc-01f3a37ac9c2","html_url":"https://github.com/kaishuu0123/leavepad","commit_stats":null,"previous_names":["kaishuu0123/leavepad"],"tags_count":39,"template":false,"template_full_name":null,"purl":"pkg:github/kaishuu0123/leavepad","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaishuu0123%2Fleavepad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaishuu0123%2Fleavepad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaishuu0123%2Fleavepad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaishuu0123%2Fleavepad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kaishuu0123","download_url":"https://codeload.github.com/kaishuu0123/leavepad/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaishuu0123%2Fleavepad/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31989325,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"ssl_error","status_checked_at":"2026-04-18T20:23:29.375Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cross-platform","editor","electron","multiplatform","notepad","typescript"],"created_at":"2024-12-03T23:06:36.742Z","updated_at":"2026-04-19T00:17:30.939Z","avatar_url":"https://github.com/kaishuu0123.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg width=\"128\" height=\"128\" src=\"https://raw.github.com/kaishuu0123/leavepad/main/build/icon.png\"\u003e\n\u003c/p\u003e\n\n# Leavepad\n\n\u003ca href=\"https://github.com/kaishuu0123/leavepad/releases\"\u003e\n\n![GitHub Release](https://img.shields.io/github/v/release/kaishuu0123/leavepad)\n\n\u003c/a\u003e\n\nLeavepad is a multi-platform notepad focused on writing memos with an integrated file editor powered by Monaco Editor.\n\n\n## Motivation\n\n1. I wanted to make a simple note that could close the editor without saving like notepad++\n1. However, notepad++ is only supported on windows (except using Wine)\n1. I wanted a memo application that could be unified to the same usability on multiple platforms.\n\nTherefore, I decided to create a memo application by Electron for my own use.\n\n## Features\n\n### 📝 Note Taking\n\n- Quick note creation with `Ctrl+N`\n- Full-featured Monaco Editor with syntax highlighting\n- **Per-note language mode settings** (changeable via status bar)\n- **JSON formatting** (F1 → \"Format JSON\" or click \"Format\" button in status bar)\n- Search notes by name or content\n- Tab-based interface with drag \u0026 drop reordering\n- Auto-save (close without saving)\n- Export / Import notes as JSON\n- Delete all notes\n\n### 📁 File Editor\n\n- Open and edit external text files\n- Syntax highlighting for 50+ programming languages\n- Multiple file tabs with drag \u0026 drop support\n- Drag \u0026 drop files from file explorer\n- Auto-detect file encoding\n- Unsaved changes detection\n- Keyboard shortcuts: `Ctrl+O` (Open), `Ctrl+S` (Save), `Ctrl+Shift+S` (Save As)\n\n### 🎨 Customization\n\n- Dark/Light theme\n- Language support: English, 日本語\n- Font selection (NOTONOTO, HackGen, Geist Mono, Moralerspace HWJPDOC Neon, M PLUS 1 Code)\n- Sort options (created/updated date)\n- Collapsible sidebar\n\n## Download\n\n- [Download from releases](https://github.com/kaishuu0123/leavepad/releases)\n\n## Support platform\n\n- Windows\n- Linux\n- macOS\n\n## Screenshots\n\n### Welcome\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd width=\"100%\"\u003e\n\n![Welcome](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/welcome.png)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n### Editor\n\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth width=\"50%\"\u003eNote Editor\u003c/th\u003e\n\u003cth width=\"50%\"\u003eFile Editor\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\n![Note Editor](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/note-editor.png)\n\n\u003c/td\u003e\n\u003ctd\u003e\n\n![File Editor](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/file-editor.png)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eJSON Formatter\u003c/th\u003e\n\u003cth\u003eSearch\u003c/th\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\n![JSON Formatter](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/json-formatter.png)\n\n\u003c/td\u003e\n\u003ctd\u003e\n\n![Search](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/search.png)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n### Language\n\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth width=\"50%\"\u003eEnglish\u003c/th\u003e\n\u003cth width=\"50%\"\u003e日本語 (Japanese)\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\n![English](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/english.png)\n\n\u003c/td\u003e\n\u003ctd\u003e\n\n![Japanese](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/japanese.png)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n### Theme\n\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth width=\"50%\"\u003eLight\u003c/th\u003e\n\u003cth width=\"50%\"\u003eDark\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\n![Light Theme](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/english.png)\n\n\u003c/td\u003e\n\u003ctd\u003e\n\n![Dark Theme](https://raw.github.com/kaishuu0123/leavepad/main/screenshots/20260411/dark.png)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n## Tips\n\n### Command Palette\n\nPress `F1` in the editor to open the command palette and access Monaco Editor's built-in commands:\n\n- **Format JSON** — Format JSON documents (custom command)\n- **Format Document** — Format any supported language\n- **Change Language Mode** — Switch syntax highlighting\n- **Toggle Line Comment** — Comment/uncomment code\n- **Find \u0026 Replace** — Search and replace text\n- **Go to Line** — Jump to a specific line number\n- And many more...\n\n### Language Mode\n\nClick the language indicator in the status bar (bottom-right of the note editor) to change the syntax highlighting mode for the current note. Each note can have its own language setting independent of the global default.\n\n## Keyboard Shortcuts\n\n### Main Window (Notes)\n\n- `Ctrl+N` - Create new note\n- `Ctrl+W` - Close current tab\n\n### File Editor Window\n\n- `Ctrl+N` - New file\n- `Ctrl+O` - Open file\n- `Ctrl+S` - Save file\n- `Ctrl+Shift+S` - Save As\n- `Ctrl+W` - Close current tab\n\n## Saved data location (Path)\n\nNotes are stored in electron's `app.getPath(\"userData\")`\n\n- **Windows**\n  - `C:\\Users\\\u003cusername\u003e\\AppData\\Roaming\\leavepad`\n  - shortcut: `%APPDATA%\\leavepad`\n- **macOS**\n  - `~/Library/Application Support/leavepad`\n- **Linux**\n  - `~/.config/leavepad/`\n\n**Files:**\n\n- `notes.json` - Note data\n- `settings.json` - User settings\n- `app-state.json` - Application state\n\n## Development\n\n### Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [devcontainer](https://code.visualstudio.com/docs/devcontainers/tutorial)\n\n### Project Setup\n\n#### Install\n\n```bash\n$ yarn\n```\n\n#### Development\n\n```bash\n$ yarn dev\n```\n\n#### Build\n\n```bash\n# For windows\n$ yarn build:win\n\n# For macOS\n$ yarn build:mac\n\n# For Linux\n$ yarn build:linux\n```\n\n## Technology Stack\n\n- **Framework:** Electron\n- **UI:** React + TypeScript\n- **Editor:** Monaco Editor\n- **State Management:** Jotai\n- **Styling:** Tailwind CSS + shadcn/ui\n- **Database:** lowdb\n- **Build:** electron-vite\n\n# LICENSE\n\nMIT\n\n## FONT LICENSE\n\n```\n\"Geist Mono\" / \"Geist Sans\" is licensed under the SIL Open Font License 1.1\nCopyright (c) 2023 vercel\nby https://github.com/vercel/geist-font\n\n\"白源\", \"HackGen\" is licensed under the SIL Open Font License 1.1\nCopyright (c) 2019 yuru7, with Reserved Font Name \"白源\", \"HackGen\"\nby https://github.com/yuru7/HackGen\n\n\"NOTONOTO\" is licensed under the SIL Open Font License 1.1\nCopyright (c) 2024 yuru7, with Reserved Font Name \"NOTONOTO\"\nby https://github.com/yuru7/NOTONOTO\n\n\"Moralerspace HWJPDOC Neon\" is licensed under the SIL Open Font License 1.1\nCopyright (c) 2023 yuru7\nby https://github.com/yuru7/moralerspace\n\n\"M PLUS 1 Code\" is licensed under the SIL Open Font License 1.1\nCopyright 2021 coz-m\nby https://github.com/coz-m/MPLUS_FONTS\n\n\"Noto Color Emoji\" is licensed under the SIL Open Font License 1.1\nCopyright 2021 googlefonts\nby https://github.com/googlefonts/noto-emoji\n\n\"Noto Sans JP\" is licensed under the SIL Open Font License 1.1\nCopyright 2014-2021 googlefonts\nby https://github.com/googlefonts/noto-cjk\n```\n\n---\n\nMade by [kaishuu0123](https://github.com/kaishuu0123) ✨\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaishuu0123%2Fleavepad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkaishuu0123%2Fleavepad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaishuu0123%2Fleavepad/lists"}