Local-first bookmark knowledge manager — save, organize, search, and annotate links, posts, articles, and web resources on your own machine.
Early preview — APIs, capture behavior, and installers may change. Not production-ready; back up
marknest.dbbefore upgrades.
MarkNest is a desktop app (Tauri + React) with an optional Chrome extension for save-from-browser capture. Use the app alone for manual bookmarks, tags, folders, full-text search, highlights, and JSON export — no account, no cloud sync, no X/Twitter API.
Download MarkNest v0.2.0 from GitHub Releases:
- Windows installer — run the
.exeor.msiasset for your platform from the v0.2.0 release. - Chrome extension (optional) — download
marknest-extension-v0.2.0.zipfrom the same release, unzip, then in Chrome openchrome://extensions→ Developer mode → Load unpacked → select the unzipped folder. The desktop app must be running for capture (bridge on127.0.0.1:4763).
Clone the repo and follow Quick start below, or see docs/RELEASE.md to produce installers with npm run tauri build.
| Your data stays local | SQLite library on disk — you choose backup/export paths |
| No login or cloud | No MarkNest servers; capture bridge listens on 127.0.0.1 only |
| Reader-style UI | Three-panel layout (sidebar · list · detail) — trademark notes |
| Optional extension | Save pages, selections, and X posts while browsing — desktop app must be running |
| Search & organize | FTS5 search, tags, folders, favorites, archive, unread/read status |
| MIT licensed | LICENSE |
MarkNest is early-preview software. The public release focuses on a small, useful local-first bookmark library. Larger capture, AI, and sync features are intentionally future work.
| Stage | Focus |
|---|---|
| Current public scope | Local-first desktop bookmark library, manual saves, notes, tags, folders, favorites, archive, unread/read status, full-text search, highlights, JSON export, database backup, optional browser extension, local capture bridge on 127.0.0.1. |
| Near-term | First GitHub Release with Windows installer, cleaner extension packaging, JSON/CSV import, better backup/restore, better capture reliability, screenshots/demo GIF, more contributor-friendly issues. |
| Later | Chrome Web Store packaging, Firefox extension, local AI summaries, optional OpenAI summaries, semantic search, Readwise-style import/export, multi-source capture, self-hosted/user-controlled sync. |
| Experimental | X/Twitter DOM capture, X native bookmark auto-save, video/media capture, browser capture heuristics. |
| Out of scope for now | Cloud account, login/auth, official X/Twitter API dependency, mobile app, full Readwise clone. |
See ROADMAP.md for the detailed roadmap.
- Node.js 18+
- Rust and Tauri prerequisites for your OS
- Google Chrome — only if you use the extension
git clone https://github.com/Mosab246/marknest.git
cd marknest
npm install
npm run tauri devThe library UI opens on port 1420. While the app runs (including minimized to the system tray), the capture bridge is available at http://127.0.0.1:4763.
- Keep MarkNest running (Settings → bridge Running).
- Open
chrome://extensions→ Developer mode → Load unpacked. - Select the
extension/folder.
Details: extension/README.md.
npm ci
npm run build
cargo check --manifest-path src-tauri/Cargo.tomlnpm run tauri buildArtifacts: src-tauri/target/release/bundle/ — see docs/RELEASE.md.
Browser (extension) ──POST /api/capture──► 127.0.0.1:4763 (bridge) ──► SQLite ──► MarkNest UI
optional loopback only
| Endpoint | Method | Purpose |
|---|---|---|
/api/health |
GET | Bridge up when app is running |
/api/capture |
POST | Create/update bookmark from capture payload |
docs/ARCHITECTURE.md · SECURITY.md · PRIVACY.md
| OS | App data (typical) |
|---|---|
| Windows | %APPDATA%\com.marknest.app\ → marknest.db, settings.json |
| macOS | ~/Library/Application Support/com.marknest.app/ |
| Linux | ~/.local/share/com.marknest.app/marknest.db |
Backup: Settings → Backup database.
Core (desktop only) — bookmarks, FTS search, tags, folders, highlights, export, backup, system tray (smoke checklist).
With extension (optional) — page/selection/X capture via local bridge (smoke checklist).
Experimental — X DOM capture, auto-save on X bookmark (off by default), tweet embeds; see ROADMAP.md.
| Symptom | Try |
|---|---|
| Extension: “MarkNest not running” | Start app or restore from tray; bridge Running in Settings |
Port 4763 in use |
Tray → Quit MarkNest, then restart |
| Extension errors after update | Reload on chrome://extensions |
| Contributing guide | Setup, CI checks, PR expectations |
| Report a bug | Desktop, extension, or bridge |
| Request a feature | Local-first scope |
| Issues | All open threads |
| Pull requests | Use the PR template |
| Security | Private advisories for vulnerabilities |
CI on main: npm run build + cargo check — .github/workflows/ci.yml.
| Doc | Description |
|---|---|
| ROADMAP.md | Scope, roadmap, experimental, out of scope |
| CHANGELOG.md | Release notes |
| CONTRIBUTING.md | Development workflow |
| SECURITY.md | Bridge, extension, reporting |
| PRIVACY.md | Local data and optional network use |
| docs/ARCHITECTURE.md | Components and data flow |
| docs/TROUBLESHOOTING.md | Common fixes |
| docs/RELEASE.md | Builds and GitHub Releases |
| docs/TRADEMARKS.md | Third-party marks |
MIT License — Copyright (c) 2026 MarkNest contributors.