Skip to content

Mosab246/marknest

Repository files navigation

MarkNest

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.db before 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.


Installation

Download (recommended)

Download MarkNest v0.2.0 from GitHub Releases:

  • Windows installer — run the .exe or .msi asset for your platform from the v0.2.0 release.
  • Chrome extension (optional) — download marknest-extension-v0.2.0.zip from the same release, unzip, then in Chrome open chrome://extensionsDeveloper modeLoad unpacked → select the unzipped folder. The desktop app must be running for capture (bridge on 127.0.0.1:4763).

Build from source (developers)

Clone the repo and follow Quick start below, or see docs/RELEASE.md to produce installers with npm run tauri build.


Highlights

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

Roadmap

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.


Quick start

Requirements

Run from source

git clone https://github.com/Mosab246/marknest.git
cd marknest
npm install
npm run tauri dev

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

Optional: load the Chrome extension

  1. Keep MarkNest running (Settings → bridge Running).
  2. Open chrome://extensionsDeveloper modeLoad unpacked.
  3. Select the extension/ folder.

Details: extension/README.md.

Verify a change (same as CI)

npm ci
npm run build
cargo check --manifest-path src-tauri/Cargo.toml

Windows installer (maintainers)

npm run tauri build

Artifacts: src-tauri/target/release/bundle/ — see docs/RELEASE.md.


How it works

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

Where files live

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.


What’s included

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.


Troubleshooting

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

docs/TROUBLESHOOTING.md


Contributing

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.


Documentation

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

License

MIT License — Copyright (c) 2026 MarkNest contributors.

About

Local-first desktop library for links and web captures with an optional Chrome extension, no cloud.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors