Documentation

Noteriv Docs

Everything you need to know to get the most out of Noteriv — from first launch to advanced automation.

Getting Started

Noteriv is a free, open-source markdown note-taking app for desktop (Linux, Windows, macOS) and mobile. Your notes live as plain .md files inside a vault — a regular folder on your filesystem.

Create a Vault

When you launch Noteriv for the first time, you will see the vault picker. Click Create new vault, choose a name and a location on disk, then hit Create. Noteriv creates the folder and a small .noteriv/ directory inside it for app-level settings (themes, plugins, layout state). You can open any existing folder as a vault too — Noteriv will never modify files it does not own.

Vault structuretext
my-vault/
  .noteriv/          # app settings, plugin data, themes
  daily/             # daily notes (configurable)
  projects/          # your folders
  welcome.md         # your first note

Write Your First Note

Press Ctrl+N (or click the + button in the sidebar) to create a new note. Give it a title, then start typing markdown. The editor renders formatting inline as you type — move your cursor away from a line and bold, italic, headings, links, and code all render in-place.

Tip
Use Ctrl+P to open the command palette at any time. It gives you quick access to every action in the app.

Markdown Syntax

Noteriv supports full CommonMark plus many extensions. Below is a comprehensive reference of every syntax element the editor understands.

Inline Formatting

Inline syntaxmarkdown
**bold text**
*italic text*
~~strikethrough~~
==highlighted text==
`inline code`
$inline math: E = mc^2$
^superscript^
~subscript~

Headings

Headingsmarkdown
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6

Lists

Listsmarkdown
- Unordered item
- Another item
  - Nested item

1. Ordered item
2. Second item
   1. Nested ordered

- [ ] Unchecked task
- [x] Completed task
Linksmarkdown
[Link text](https://example.com)
[Link with title](https://example.com "Title")

[[note name]]              # wiki-link
[[note name|display text]] # aliased wiki-link

Wiki-links are the backbone of Noteriv’s knowledge graph. Type [[ and an autocomplete dropdown suggests notes from your vault. Renaming a note updates all references.

Images & Embeds

Images and embedsmarkdown
![Alt text](image.png)
![Alt text|600x400](image.png)   # with dimensions

![[file.md]]       # embed another note inline
![[image.png]]     # embed an image from vault
![[file.pdf]]      # embed a PDF

Tables

Tablesmarkdown
| Column A | Column B | Column C |
|----------|----------|----------|
| Cell 1   | Cell 2   | Cell 3   |
| Cell 4   | Cell 5   | Cell 6   |

Blockquotes & Callouts

Blockquotesmarkdown
> Standard blockquote
> Can span multiple lines

Callouts use a special blockquote syntax with a type identifier. Noteriv supports 14 callout types:

Callout syntaxmarkdown
> [!note] Title
> Callout body content

> [!tip] Helpful hint
> Use callouts to highlight important information.

> [!warning] Be careful
> This action cannot be undone.
note
tip
info
warning
danger
bug
example
quote
success
question
abstract
todo
failure
important

Code Blocks

Fenced code blocks are syntax-highlighted. Noteriv supports all major languages:

Fenced code blockmarkdown
```javascript
function greet(name) {
  return `Hello, ${name}!`;
}
```
javascripttypescriptpythonrustgohtmlcssjsonbashjava

Table of Contents

Add [TOC] anywhere in a note and Noteriv renders a live table of contents generated from the headings in the document.

Table of contentsmarkdown
[TOC]

# Section One
## Subsection
# Section Two

Mermaid Diagrams

Use ```mermaid code blocks to create flowcharts, sequence diagrams, Gantt charts, pie charts, and more — rendered live as you type.

Mermaid examplemarkdown
```mermaid
graph LR
    A[Write Note] --> B[Link Notes]
    B --> C[Build Knowledge]
```

Math (KaTeX)

Math syntaxmarkdown
Inline: $E = mc^2$

Block:
$$
\frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
$$

Dataview Queries

Write queries in ```dataview blocks to turn your vault into a queryable database. Supports TABLE, LIST, and TASK query types with FROM, WHERE, SORT, and LIMIT clauses.

Dataview examplesmarkdown
```dataview
TABLE status, due FROM "projects"
WHERE status != "done"
SORT due ASC
LIMIT 10
```

```dataview
LIST FROM #reading
WHERE rating > 4
SORT rating DESC
```

```dataview
TASK FROM "daily"
WHERE !completed
SORT due ASC
```

Flashcards

Write flashcards directly inside your notes using two syntaxes. Noteriv schedules reviews with the SM-2 spaced repetition algorithm.

Flashcard syntaxmarkdown
Q: What is the capital of France?
A: Paris

Q: What does HTTP stand for?
A: HyperText Transfer Protocol

The mitochondria is the {{powerhouse}} of the cell.
Photosynthesis converts {{light energy}} into {{chemical energy}}.

Definition Lists

Definition listmarkdown
Term
: Definition of the term

Another term
: First definition
: Second definition

Footnotes

Footnotesmarkdown
This claim needs a source[^1].

Another referenced point[^note].

[^1]: Source citation here.
[^note]: A longer footnote with multiple paragraphs.

Features

Noteriv ships with a complete set of tools for writing, organizing, and connecting your ideas. For a detailed breakdown of every feature, visit the Features page.

Live Markdown Editor

Inline rendering, CodeMirror 6, syntax highlighting

Wiki-Links & Graph View

Bidirectional linking, interactive force-directed graph

Board View

Kanban boards from markdown with drag-and-drop cards

Canvas & Whiteboard

Infinite canvas with sticky notes, drawing, arrows

Calendar & Daily Notes

Monthly calendar with templates and task due dates

Flashcard Review

SM-2 spaced repetition with Q:/A: and cloze deletion

Dataview Queries

TABLE, LIST, TASK queries against your vault

Mermaid & KaTeX

Diagrams and math rendered live in the editor

Focus Mode & Vim

Distraction-free writing with optional Vim keybindings

PDF Viewer

Read and annotate PDFs side-by-side with notes

Web Clipper

Save web pages as markdown with the browser extension

Themes

10 built-in themes including Catppuccin, Nord, Dracula

Publish & Export

HTML, PDF, and slide presentation export

Trash & Recovery

Soft delete with restore, never lose a note

Tab Pinning

Pin frequently-used notes for quick access

Note History

Timeline of changes with diff view

Keyboard Shortcuts

Noteriv is designed for keyboard-driven workflows. All shortcuts are customizable in Settings.

ShortcutAction
Ctrl+SSave current note
Ctrl+POpen command palette
Ctrl+BToggle bold
Ctrl+IToggle italic
Ctrl+KInsert link
Ctrl+NCreate new note
Ctrl+Shift+FSearch across vault
Ctrl+,Open settings
Note
On macOS, replace Ctrl with Cmd for all shortcuts.

MCP Server

Noteriv ships an MCP (Model Context Protocol) server with 22 tools, published as noteriv-mcp on npm. Connect it to Claude Code, Cursor, or any MCP-compatible AI assistant and let them read, search, create, and modify notes in your vault programmatically.

Setup

Install and runbash
npx noteriv-mcp

Add the server to your MCP client configuration. For Claude Code, add it to your .claude.json or MCP settings:

Claude Code configurationjson
{
  "mcpServers": {
    "noteriv": {
      "command": "npx",
      "args": ["noteriv-mcp"]
    }
  }
}

22 Tools in 6 Categories

Vault Management

  • list_vaults — list all known vaults
  • switch_vault — switch active vault
  • get_active_vault — get current vault
  • set_vault_path — set vault by path
  • get_vault_stats — vault statistics

CRUD Operations

  • read_note — read note content
  • write_note — create or update a note
  • append_to_note — append content
  • rename_note — rename a note
  • delete_note — delete a note
  • get_note_info — note metadata

Search & Discovery

  • search_notes — full-text search
  • list_notes — list notes in folder
  • list_all_files — list every file
  • get_tags — list all tags in vault

Folders

  • list_folders — list all folders
  • create_folder — create a folder
  • delete_folder — delete a folder

Graph & Links

  • get_backlinks — notes linking here
  • get_outgoing_links — links from a note

Daily Notes

  • create_daily_note — create today's note
  • get_recent_daily_notes — recent daily notes

Sync Setup

Noteriv supports three sync methods. Every option keeps your notes on infrastructure you control — no proprietary cloud service sits between you and your files.

Git Sync

The most powerful option. Noteriv’s built-in Git integration handles stash/pop for unsaved changes, commits, pulls, and pushes — all from within the app. Point your vault at a Git remote and sync automatically on save or on a configurable interval.

Git setupbash
# Initialize your vault as a git repo
cd ~/my-vault
git init
git remote add origin git@github.com:you/my-vault.git

# Noteriv handles the rest — commit, pull, push from the app
Tip
Enable “Auto-sync on save” in Settings to push changes every time you save a note.

Folder Sync

Mirror your vault to a second directory on disk. Useful for syncing to a cloud drive folder (Dropbox, Google Drive, OneDrive) or an external backup location. Noteriv watches for changes in both directions.

Folder sync configtext
Settings > Sync > Folder Sync
  Source: ~/my-vault
  Target: ~/Dropbox/noteriv-backup
  Interval: On save

WebDAV Sync

Connect to a WebDAV server (Nextcloud, ownCloud, or any standard WebDAV endpoint) to sync your vault over the network. Enter your server URL, username, and password in Settings, and Noteriv handles uploads, downloads, and conflict detection.

WebDAV configtext
Settings > Sync > WebDAV
  URL: https://cloud.example.com/remote.php/dav/files/you/vault
  Username: you
  Password: ••••••••
  Interval: Every 5 minutes

Plugins

Extend Noteriv with community-built plugins. The plugin system provides a rich API for adding new features without forking the core codebase.

Installing Plugins

Open Settings > Plugins > Browse to see the community plugin registry. Click Install on any plugin, and it downloads into your vault’s .noteriv/plugins/ directory. Plugins are sandboxed and can be enabled or disabled individually.

Enabling & Disabling

Toggle plugins on and off from Settings > Plugins > Installed. Disabled plugins remain on disk but do not load at startup. You can also set per-vault plugin configurations if a plugin exposes settings.

Plugin API

The plugin API exposes lifecycle hooks and access to core systems:

Plugin structuretypescript
import { Plugin } from "noteriv";

export default class MyPlugin extends Plugin {
  onLoad() {
    // Called when the plugin is enabled
    this.registerCommand({
      id: "my-command",
      name: "My Custom Command",
      hotkey: "Ctrl+Shift+M",
      callback: () => {
        // Your logic here
      },
    });

    this.registerStatusBarItem({
      text: "My Plugin",
      onClick: () => console.log("clicked"),
    });
  }

  onUnload() {
    // Cleanup when disabled
  }

  onFileOpen(file: NoteFile) {
    // React to file open events
  }

  onFileSave(file: NoteFile) {
    // React to file save events
  }
}

Available hooks: onLoad, onUnload, onFileOpen, onFileSave. Plugins can register commands in the command palette, add status bar widgets, and read/write editor state.

Note
The plugin API is stable as of v1.0. Community plugins are reviewed before appearing in the registry.