{"id":45607174,"url":"https://github.com/ender-wang/edgemark","last_synced_at":"2026-06-06T05:00:28.249Z","repository":{"id":340120631,"uuid":"1164637696","full_name":"Ender-Wang/EdgeMark","owner":"Ender-Wang","description":"A SideNotes alternative.","archived":false,"fork":false,"pushed_at":"2026-06-05T06:00:23.000Z","size":6942,"stargazers_count":131,"open_issues_count":3,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-05T07:33:34.362Z","etag":null,"topics":["codemirror6","macos-app","markdown","markdown-editor","sidenotes","swift"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ender-Wang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2026-02-23T10:11:13.000Z","updated_at":"2026-06-05T06:00:27.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Ender-Wang/EdgeMark","commit_stats":null,"previous_names":["ender-wang/edgemark"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/Ender-Wang/EdgeMark","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ender-Wang%2FEdgeMark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ender-Wang%2FEdgeMark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ender-Wang%2FEdgeMark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ender-Wang%2FEdgeMark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ender-Wang","download_url":"https://codeload.github.com/Ender-Wang/EdgeMark/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ender-Wang%2FEdgeMark/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33969883,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-06T02:00:07.033Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["codemirror6","macos-app","markdown","markdown-editor","sidenotes","swift"],"created_at":"2026-02-23T16:00:50.527Z","updated_at":"2026-06-06T05:00:28.240Z","avatar_url":"https://github.com/Ender-Wang.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\".github/assets/EdgeMark.svg\" alt=\"EdgeMark\" width=\"128\" align=\"left\" /\u003e\n\n\u003cb\u003e\u003cfont\u003eEdgeMark\u003c/font\u003e\u003c/b\u003e\n\n A native macOS side-panel Markdown notes app. Always one edge away.\n\n\u003cbr clear=\"all\" /\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/Ender-Wang/EdgeMark/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/Ender-Wang/EdgeMark?label=Latest%20Release\u0026color=green\" alt=\"Latest Release\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/Ender-Wang/EdgeMark/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/downloads/Ender-Wang/EdgeMark/total?color=green\" alt=\"Total Downloads\" /\u003e\u003c/a\u003e\n  \u003cbr /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Swift-6.2-orange?logo=swift\" alt=\"Swift\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/macOS-15.7+-black?logo=apple\" alt=\"macOS\" /\u003e\n  \u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/Ender-Wang/EdgeMark?color=blue\" alt=\"License\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n**Why EdgeMark exists:** [SideNotes](https://www.apptorium.com/sidenotes) nailed the interaction — a notes panel that slides in from the screen edge, always one gesture away. But it's closed-source and paid, with no way to contribute, customize, or verify what it does with your data.\n\nEdgeMark is the open-source alternative: **lightweight, Markdown-first**, and yours to inspect, modify, and extend. Your notes are plain `.md` files on disk — open them in any editor, sync with any service, back them up however you want.\n\n\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\".github/assets/screenshot-dark.png\" /\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\".github/assets/screenshot-light.png\" /\u003e\n    \u003cimg alt=\"EdgeMark Screenshots\" src=\".github/assets/screenshot-light.png\" /\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n# Install\n\n```bash\nbrew install --cask ender-wang/tap/edgemark\n```\n\nOr download the latest `.dmg` from [Releases](https://github.com/Ender-Wang/EdgeMark/releases), install it, and then run this command in Terminal:\n\n```bash\nxattr -cr /Applications/EdgeMark.app\n```\n\n---\n\n# Features\n\n🪟 **Side Panel**\n\n- 🔲 Borderless floating panel, full-height, always on top\n- 🖥️ Works on every virtual Desktop and alongside fullscreen apps\n- ✨ Smooth slide-in/out or fade animation (configurable) with edge activation — move mouse to screen edge to reveal\n- 🖱️ Click outside, Escape, or auto-hide dismissal\n- 📌 Pin to keep the panel open — survives focus changes, mouse exit, and Space switches (great for copy-pasting back and forth)\n- 📐 Multi-monitor support with configurable left or right edge\n- ↔️ Adjustable width — drag the inner edge to resize, saved across restarts\n- 🎨 Panel tint — pick from a curated palette (System, Graphite, Slate, Sand, Sage, Rose)\n\n✍️ **Markdown Editing**\n\n- 👁️ Native TextKit 2 WYSIWYG editor — powered by [swift-markdown-engine](https://github.com/nodes-app/swift-markdown-engine), no JavaScript or WebKit involved\n- 📝 Full Markdown: headings, bold, italic, code, lists, task lists, blockquotes, links, tables, wiki-links\n- 🖼️ Inline images — paste (`⌘V`) or drag to embed; stored as co-located asset files alongside the note\n- ✅ Checked task items are automatically struck through; uncheck to restore\n- 📋 One-click Copy button on fenced code blocks\n- 🔴 *Native spell check, grammar check, and autocorrect (macOS system dictionary) (deferred)*\n- ⚡ Slash commands (`/h1`, `/todo`, `/code`, `/quote`, `/table`, `/divider`, and more)\n- ⌨️ Formatting shortcuts: `⌘B` bold, `⌘I` italic, `⌘E` inline code, `⌘K` link, `⇧⌘X` strikethrough\n- 🔗 Click a rendered link to open it in the browser\n- 🔍 *Find \u0026 Replace (`⌘F`) (deferred)*\n- 🔤 Customizable editor font and size — pick any installed font via the system font panel with live preview\n- 🧮 LaTeX rendering — block (`$$...$$`) and inline (`$...$`) via SwiftMath\n\n🗂️ **Notes \u0026 Storage**\n\n- 📄 Plain `.md` files with no injected headers — open in any editor, sync with any service; metadata lives in a hidden `.edgemark/meta.json` sidecar\n- 📁 Folder-based organization with drag-and-drop\n- 📂 Configurable storage directory\n- 💾 1-second debounced auto-save\n- 🔍 Search shows all notes sorted by most recently modified when the query is empty — a quick \"recent notes\" feed\n- 🏷️ Finder-style color tags (Red, Orange, Yellow, Green, Blue, Purple, Gray) with rename-able labels; multi-tag per note\n- 🎯 Tag filter inside search — click tag dots to narrow results, multi-select acts as OR, combines with text search\n- 🔄 External file sync — edits from other apps are detected on panel open; prompts when both sides changed\n- 🗑️ Trash with 30-day auto-purge and read-only preview\n\n⌨️ **Keyboard \u0026 Shortcuts**\n\n- 🌐 Global shortcut: `Ctrl+Shift+Space` toggles from any app (customizable)\n- 🎹 Fully customizable local shortcuts — new note, new folder, search, pin, prev/next note — all rebindable in Settings with conflict detection\n- ⏱️ Configurable activation delay and corner exclusion zones\n- 🔑 Default panel shortcuts: `⌘N` new note, `⇧⌘N` new folder, `⌘F` search, `⌘P` pin/unpin\n- 👆 Two-finger trackpad swipe right on the header to navigate back (configurable toggle and sensitivity)\n- 👆 Two-finger swipe left/right on the editor or `⌘←`/`⌘→` to navigate between notes in the current folder\n\n🔄 **Auto-Update \u0026 CI/CD**\n\n- 🔔 In-app update check (GitHub Releases, 24h throttle)\n- 📦 Download with progress bar, SHA256 verification, install \u0026 restart\n- ⚙️ GitHub Actions build pipeline (unsigned Release, DMG, SHA256)\n- 🍺 Homebrew Cask installation\n\n🌟 **Quality of Life**\n\n- 🌗 Appearance override: System, Light, or Dark mode\n- 📌 Menu bar resident (no Dock icon)\n- 🚀 Launch at login\n- 📋 Copy as Plain Text, Markdown, or Rich Text — selection-aware in editor with right-click context menu\n- 🎨 SF Symbol icons throughout all context menus\n- 🔀 Smooth directional page transitions\n- 🌍 English + Simplified Chinese (JSON-based, easy to contribute)\n\n---\n\n# Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for architecture overview, source tree, key patterns, localization guide, and development setup.\n\n---\n\n# License\n\nEdgeMark is licensed under the [GNU General Public License v3.0](LICENSE).\n\n# Acknowledgments\n\nEdgeMark is built on top of these open-source projects:\n\n| Project | License | Description |\n|---------|---------|-------------|\n| [swift-markdown-engine](https://github.com/nodes-app/swift-markdown-engine) | Apache 2.0 | TextKit 2 / NSTextView WYSIWYG Markdown editor — powers the editing experience. Bundles [HighlighterSwift](https://github.com/smittytone/HighlighterSwift) for code block syntax highlighting and [SwiftMath](https://github.com/mgriebling/SwiftMath) for LaTeX rendering. |\n| [SwiftFormat](https://github.com/nicklockwood/SwiftFormat) | MIT | Code formatting tool used in the build pipeline |\n\n---\n\n# Star History\n\n\u003ca href=\"https://star-history.com/#Ender-Wang/EdgeMark\u0026Date\"\u003e\n \u003cpicture\u003e\n   \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/svg?repos=Ender-Wang/EdgeMark\u0026type=Date\u0026theme=dark\" /\u003e\n   \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://api.star-history.com/svg?repos=Ender-Wang/EdgeMark\u0026type=Date\" /\u003e\n   \u003cimg alt=\"Star History Chart\" src=\"https://api.star-history.com/svg?repos=Ender-Wang/EdgeMark\u0026type=Date\" /\u003e\n \u003c/picture\u003e\n\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fender-wang%2Fedgemark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fender-wang%2Fedgemark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fender-wang%2Fedgemark/lists"}