Features
Everything Klarinotte can do — and how to use it.
Editor & Markdown
Klarinotte uses a CodeMirror 6 editor with full markdown support: headings, bold, italic, strikethrough, lists (ordered, unordered, task lists), code blocks with syntax highlighting, tables, math equations (KaTeX), and more.
Formatting Toolbar
A formatting toolbar above the editor provides quick access to common formatting actions — bold, italic, headings, lists, links, code, and math.
On mobile devices, an additional markdown character toolbar appears, giving quick access to characters frequently needed when typing markdown: [ ] # ` - *. This saves you from hunting through the mobile keyboard for these symbols.
Edit & Preview Mode
Switch between Edit mode (the markdown editor) and Preview mode (rendered markdown) with Ctrl+E (⌘+E on Mac), or click the toggle button in the note header. The scroll position syncs between modes, so you don't lose your place.
Pasting from the Web
When you copy formatted content from a website — headings, bold text, links, lists, tables — and paste it into Klarinotte, the HTML formatting is automatically converted to Markdown. Pasted content becomes clean, portable Markdown rather than raw HTML or a blob of plain text stripped of all structure.
For example, copying a bulleted list from a webpage and pasting it will produce a proper Markdown list; a bold heading on a page becomes ## Heading; a hyperlink becomes [link text](url).
Overriding the conversion
Sometimes you want plain text without any formatting, or you want the raw HTML itself. There are two ways to bypass the automatic conversion:
- Context menu → "Paste without formatting" — Right-click in the editor and choose Paste without formatting (or use the browser's built-in Ctrl+Shift+V / ⌘+Shift+V shortcut on most systems) to paste raw plain text, discarding all HTML structure.
- Paste inside a code block — When the cursor is inside a fenced code block (
```), pasted content is always inserted as-is plain text, with no Markdown conversion applied. This is useful for pasting HTML snippets, code, or any content where you want to preserve the original characters exactly.
Wiki-Links
Connect your notes with double-bracket wiki-style links:
See also [[Meeting Notes]] for context.
Reference a subfolder note: [[Projects/Redesign]]
Fuzzy Auto-Suggest
When you type [[, an autocomplete menu appears. It uses fuzzy matching — you don't need to type the exact title. For example, typing [[meet no will match "Meeting Notes", and [[prj rdsn will find "Projects/Redesign".
Backlinks
The right sidebar shows backlinks — all notes that link to the currently open note. This lets you discover connections and navigate your knowledge graph.
Automatic Link Updates
When you rename or move a note, all wiki-links pointing to it are automatically updated across your entire vault.
Tags
Add tags anywhere in your notes using hashtag syntax:
#project #idea #work/meeting #research/physics/quantum
Hierarchical Tags
Tags support hierarchies using forward slashes. #work/meeting creates a nested tag — you can filter by the parent #work to see all work-related notes, or drill down to #work/meeting specifically. The tags panel lets you switch between flat and hierarchy views.
Quick Switcher
Press Ctrl+P (⌘+P on Mac) to open the Quick Switcher — a modal search that lets you jump to any note instantly.
It uses fuzzy search, so you can type fragments of a note title and it will find the match. Recently opened notes appear at the top when the search field is empty. Use arrow keys to navigate results and Enter to open.
Search
The search page provides full-text search across all note titles and content. It supports:
- Regular text queries
- Regular expressions
- Tag-based filtering
- Folder-based filtering
- Search history and suggestions
Semantic Search
Beyond keyword matching, Klarinotte offers semantic search — find notes by meaning and concept, not just exact words. This is powered by a multilingual AI model that runs entirely on your device.
How It Works
- Download the model — On first use, a ~25 MB embedding model is downloaded to your browser. This happens once and is cached for future use.
- Index your notes — Notes need to be indexed before they can be searched semantically. Open the Semantic Search section in Settings to index your notes. Notes that are too short (below a configurable minimum character length) are excluded from indexing.
- Search by concept — Activate the semantic search toggle (✨) on the search page and type a natural language query. Results are ranked by conceptual similarity.
Semantic Search Menu
In Settings → Semantic Search, you can:
- Index remaining notes — Index only notes that haven't been indexed yet or have changed since last indexing.
- Re-index all notes — Force a full re-index of every note.
- View index statistics (how many notes are indexed, model status).
- Configure the minimum note length for indexing.
Multilingual: The embedding model supports many languages (English, German, French, Arabic, Chinese, and more), as well as programming languages. You can search across languages — a query in English can find relevant notes written in other languages.
Note: Semantic search is available on desktop browsers only. On mobile devices, the model would be too large to load reliably.
Image Search via OCR
When you drop a photo or screenshot into a note, the content inside that image is invisible to search — until OCR runs on it. Klarinotte's OCR feature is powered by Tesseract.js and runs entirely on your device. No images are ever sent to a server.
The Goal: Findability, Not Transcription
Klarinotte's OCR is not trying to produce a perfect transcript of every image. The goal is simpler and more practical: extract enough meaningful keywords so that a typed search query can surface the right note, even when the relevant information lives inside an image rather than in the written text.
Think of it as giving your images a voice in search. If you paste a screenshot of a recipe, a whiteboard photo, or a scanned business card, OCR pulls out the words it can read — and those words become searchable anchors for the note.
How OCR Results Are Stored
The recognized keywords are stored as an HTML comment placed directly after the image in your note's markdown:

<!-- OCR-DATA confidence=82 language=eng date=2025-11-15T10:30:00Z
sprint backlog velocity retrospective
user story acceptance criteria
-->
This is a deliberate design choice with two benefits:
- Invisible in rendered output — HTML comments are not displayed in Preview mode, in PDF exports, or in any rendered view. Your note looks exactly the same to the reader; the OCR text is completely hidden from sight.
- Fully searchable in the background — Because the comment is plain text inside your note file, the regular full-text search and semantic search can both index and find it, letting you locate a note by a word that appears inside one of its images.
The result is that visual appeal is preserved while your images become part of the searchable fabric of your vault.
Running OCR
To run OCR on a note's images, open the toolbar overflow menu ⋮ and choose the OCR command. Klarinotte will process every image in the note and insert keyword comments for any images that don't already have one.
Text Filtering
OCR output can be noisy — low-confidence guesses, image artifacts, and stray symbols. Klarinotte includes configurable filters to keep only the useful words. In Settings → OCR, you can enable or disable each filter:
- Confidence filter — Drop words below a minimum recognition confidence (default: 60%).
- Short word filter — Drop words shorter than a minimum length (default: 2 characters).
- Digit filter — Drop tokens that contain digits (cuts noise from image artifacts).
- Special character filter — Drop tokens made up of only special characters.
Languages
OCR supports multiple languages. Language data files are downloaded automatically on first use for each language you enable, then cached locally. When multiple languages are active, Tesseract processes images with all of them simultaneously, which is useful for notes that mix scripts (e.g., English and Arabic).
First run: The OCR engine and language data are downloaded automatically the first time you use OCR. Subsequent runs use the locally cached files — no internet connection required.
Graph View
The graph view visualizes your notes as an interactive node-link diagram. Each note is a node, and wiki-links between notes are edges. You can pan, zoom, and click on nodes to navigate to notes. Filtering by tags, folders, or connections is supported.
Note History
Klarinotte automatically creates snapshots of your notes as you work. Access the history from the note header to see past versions with timestamps. You can preview any version and restore it with one click.
The retention policy keeps recent edits (last 10), daily snapshots (30 days), weekly snapshots (12 weeks), and monthly snapshots (12 months).
Daily Notes
Press Ctrl+Shift+D (⌘+Shift+D on Mac) to create or open today's daily note. The note title uses the format YYYYMMDD (e.g., 20251113). If a note with today's date already exists, it opens it instead of creating a duplicate.
Themes & Appearance
Dark & Light Mode
Toggle between dark and light themes with Ctrl+Shift+L (⌘+Shift+L on Mac).
Accent Color
Customize the accent color used throughout the interface — buttons, links, highlights, and active states. Choose from the available accent colors in Settings → Appearance.
Zen Mode
Toggle zen mode with Ctrl+Alt+Z (⌘+Option+Z on Mac) to hide the sidebar and all UI chrome, leaving only your note content for distraction-free writing.
Bidirectional Text
Klarinotte automatically detects the script direction of each line in the editor. Lines beginning with right-to-left characters (Arabic, Hebrew, Persian, Urdu, etc.) are automatically aligned to the right, while left-to-right lines remain left-aligned. This happens per-line — you can mix LTR and RTL content freely within the same note.
Empty lines inherit the direction of the previous line, so pressing Enter in the middle of RTL text continues in the correct direction.
Toolbars
Formatting Toolbar
The toolbar above the editor provides one-click formatting: bold, italic, headings, lists, links, code blocks, and math equations.
Mobile Markdown Toolbar
On mobile devices, an additional toolbar provides quick-insert buttons for commonly used markdown characters: [ ] # ` - *. These characters are often buried in secondary keyboard layers — this toolbar puts them one tap away.
Platforms & Mobile
Browser Support
Klarinotte runs in all modern browsers: Chrome, Firefox, Safari, and Edge.
Install as a Web App
On supported browsers, you can install Klarinotte as a PWA (Progressive Web App) for a native-like experience — fullscreen window, faster launch, and home screen icon.
Mobile Optimization
On mobile devices, Klarinotte adapts to smaller screens: the sidebar auto-closes when you select a note, the interface is optimized for touch interaction, and the mobile markdown toolbar provides quick access to commonly needed characters.
Sidebar Navigation
The file explorer sidebar supports keyboard navigation:
- Arrow keys — Navigate between notes in the sidebar.
- Tab — Jump from the sidebar to the note editor.
- Tab from title — When the cursor is in the note title field, pressing Tab moves focus to the note body.
Offline & Updates
Klarinotte is a fully offline-capable application. Once loaded, it works without an internet connection. All your data is stored locally in your browser.
The app automatically checks for updates in the background. You can also manually check for updates in Settings. To force an immediate update, press Ctrl+Shift+R (⌘+Shift+R on Mac) to hard-reload and pull the latest version.
Bookmarks & Attachments
Bookmarks let you pin frequently accessed notes for quick access from the sidebar.
Attachments (images, files) can be added to notes via drag-and-drop or paste. They are stored alongside your notes in the local database.