OWL-Note
Overview
Free Markdown notes that live as bookmarks and sync via your own Chrome Sync. A lightweight alternative to Evernote.
# 🦉 OWL-Note ### A free lightweight alternative to Evernote/Notion/Obsidian. > **Just a note-taking app. Clean, AI-friendly Markdown. No bloat.** > Your Markdown notes, living natively inside your browser bookmarks. Zero servers, zero subscriptions — free sync through your own Google or Microsoft account. If you just want to write things down without a bloated app getting in your way, OWL-Note is for you. It's as simple as a note-taking app can possibly be — leveraging the browser infrastructure you already use every single day. Why OWL-Note? Most modern note-taking apps have devolved into bloated, slow, and expensive ecosystems. They pack in features you never asked for and lock your data behind proprietary clouds. OWL-Note strips away the buzzwords and the infrastructure tax: * **AI-free, AI-ready.** No assistant crammed into your editor — and one-click **Export to Markdown** hands your whole library (a zip of plain `.md` files) to any local LLM, RAG pipeline, or agent. * **No $100+/year subscriptions.** It's entirely free, driven by your own browser. * **No proprietary cloud lock-in.** Your notes belong to you. * **No heavy desktop apps.** If your browser is open, your notes are ready. * **Completely open-source.** Every line is open for inspection on [GitHub](https://github.com/hinagate/owl-note) — no hidden code, no telemetry, no surprises. --- ## ⚡ Key Features * **Pure Minimalism:** Open the extension, type, and save. It gets out of your way. * **Native Browser Search:** Because your notes are saved as standard bookmarks, you don't even need to open the app to find them. Search your entire note library instantly using your browser's address bar or built-in bookmark manager. * **Native Sync, On Whatever You Use:** OWL-Note runs on any Chromium browser. On **Chrome** your notes ride your **Google account** sync; on **Edge** they ride your **Microsoft account** sync — propagating to every device signed into that same browser profile. *(Each browser syncs within its own account, so install the extension on each device for the notes to open there.)* * **Pure Markdown Editing:** Write seamlessly with full Markdown support and a live preview. * **Bring Your Notes With You:** One-click **Import** pulls in an existing library — Evernote `.enex` files, plus Markdown exported from **Notion**, **Obsidian**, **Bear**, and **Craft** (drop in single `.md` files or a whole `.zip`). It also restores an OWL-Note `.json` backup. ENEX notes are converted to clean Markdown with their images inlined, so nothing stays locked in a proprietary format. * **Rich Code Blocks:** Built for developers. Save your scripts, configs, and snippets with full syntax highlighting. * **LaTeX Math Expressions:** Built for engineers, researchers, and students. Render formulas, equations, and scientific notation with KaTeX — both `$$display$$` and `$inline$`. * **Powered by Bookmarks:** Your notes are stored as ordinary bookmarks in a dedicated folder — no proprietary database, no third-party server. A compressed local backup is also kept on each device, so a stray bookmark edit never costs you your work. * **Privacy by Design:** There is no backend API and no central database. Your notes live only in your browser and travel solely through your own account's native sync (under Google's or Microsoft's terms) — we never receive them. --- ## 🛠️ How It Works OWL-Note reads and writes directly to a designated folder in your browser's bookmark tree. 1. **Write:** Open the extension and type in clean Markdown (complete with code blocks and math formulas). 2. **Save:** The extension compresses your note and stores it inside a bookmark node (with a local backup copy on the device). 3. **Sync:** Your browser's native engine (Google Sync on Chrome, Microsoft Sync on Edge) carries the update to your other devices signed into the same profile. > **Note on size:** because a note lives inside a bookmark URL, OWL-Note is built for text — Markdown, code, and math — not large file or image storage. Very long notes are capped to stay within the browser's sync limits. --- ## 🛠️ Develop - `npm install` - `npm test` - `npm run build` → load `dist/` unpacked at `chrome://extensions` (or `edge://extensions`). ### Stable extension ID (required before notes survive a reinstall) Note bookmarks embed `chrome-extension://<id>/`. Local unpacked builds get a different `<id>` than the published store build, which would 404 old bookmarks. Pin the ID: 1. Create a one-time upload of the extension on the Chrome Web Store dashboard. 2. Dashboard → your item → **Package → View public key**. Copy the base64 string. 3. Add it to `manifest.json` as a top-level `"key": "<base64>"` for local builds. 4. Verify: after loading unpacked, the ID at `chrome://extensions` now matches the published ID. **Test an actual upload** to confirm whether the published package must include or omit `key` (CWS handling is version-dependent). 5. Add a release check that `chrome-extension://<published-id>/app.html` loads before shipping — every stored bookmark depends on that ID. ### Measuring the real sync size limit (one-time) 1. Add `tools/sync-probe.html`/`.js` to the build temporarily (or load the repo unpacked with a bundling step), open it on Device A, click **Write probes**. 2. Wait for Chrome Sync, open the page on Device B, click **Read back**. 3. The largest `probe-Nkb` that is not `MISSING/EMPTY` is your safe ceiling. Set `WARN_URL_BYTES`/`MAX_URL_BYTES` in `src/app/app.js` accordingly. --- ## ⚠️ Known Limitations (Current Build) * **Attachments:** Pasted links render as standard Markdown links in the note body. The dedicated attachment chips with a "copy path" button for `file://` links are not yet wired into the editor. Chrome blocks opening `file://` from an extension page, so for local files paste the path and copy it manually for now. * **Auto re-heal:** If a note's bookmark is deleted outside the app, the app does not yet auto-detect and offer to restore it. The note is still safe in the local backup — recover it via Export → Import. (`mirror.healMissing` exists for a future wiring of this.) * **Size thresholds are unmeasured:** The 16 KB warn / 64 KB hard-cap (`WARN_URL_BYTES`/`MAX_URL_BYTES` in `src/app/app.js`) are conservative starting values, not measured. Run `tools/sync-probe` across two devices and set the real ceiling. * **Edge / Microsoft sync:** OWL-Note targets Chromium and uses the standard `chrome.bookmarks` API that Edge implements, so it is expected to sync via your Microsoft account on Edge — but this path has not yet been verified end-to-end the way Chrome Sync has.
0 out of 5No ratings
Details
- Version1.1.0
- UpdatedJune 24, 2026
- Offered byAiden_Or
- Size1.32MiB
- LanguagesEnglish (United States)
- Developer
Email
hinagate@gmail.com - Non-traderThis developer has not identified itself as a trader. For consumers in the European Union, please note that consumer rights do not apply to contracts between you and this developer.
Privacy
This developer declares that your data is
- Not being sold to third parties, outside of the approved use cases
- Not being used or transferred for purposes that are unrelated to the item's core functionality
- Not being used or transferred to determine creditworthiness or for lending purposes