# Inkdrop Features

Inkdrop is a Markdown note-taking app for developers, available on macOS, Windows, Linux, iOS, and Android, with end-to-end encrypted sync. This page lists what it can do.

It is built and maintained by an independent developer and has been shipping since 2016.

## Writing in Markdown

Inkdrop is a plain-text Markdown editor, with no WYSIWYG mode by design. The editor is built on **CodeMirror 6**, and the same engine runs on desktop and mobile. [Docs: Write notes](https://docs.inkdrop.app/reference/write-notes) · [Markdown syntax](https://docs.inkdrop.app/writing/basic-writing-and-formatting-syntax)

- **GitHub Flavored Markdown** — tables with column alignment, task lists, strikethrough, footnotes, sub/superscript, and HTML comments that stay hidden in the preview.
- **Editor, preview, or side-by-side** — editor only, preview only (<kbd>Cmd/Ctrl+E</kbd>), or both (<kbd>Cmd/Ctrl+P</kbd>).
- **Distraction Free Mode** — <kbd>Cmd/Ctrl+Shift+D</kbd> hides the sidebar and note list so you can focus on writing.
- **Floating toolbar** — appears only when you select text, with bold, italic, inline code, links, headings, lists, task lists, GitHub alerts, and highlights.
- **Slash commands** — press `/` on an empty line to insert headings, lists, task lists, code blocks, blockquotes, horizontal rules, images, GitHub alerts, and note links.
- **Formatting shortcuts** — bold (<kbd>Cmd/Ctrl+B</kbd>), italic (<kbd>Cmd/Ctrl+I</kbd>), blockquote, and link. Pasting a URL over selected text turns it into a link.
- **Code block language suggestions** — type ` ``` ` and pick a language; autocompletion inside the block switches to that language.
- **Emoji autocompletion** — type `:` plus two characters for GitHub-style emoji.
- **GitHub Alerts** — `> [!NOTE]`, `> [!TIP]`, `> [!IMPORTANT]`, `> [!WARNING]`, and `> [!CAUTION]` are highlighted in the editor with proper colors, and the alert type autocompletes.
- **Note links with `[[`** — search your notes and insert an internal link, with a syntax-highlighted preview of each candidate. If the note doesn't exist yet, Inkdrop creates, links, and opens it in one step.
- **Reading highlights** — wrap a selection in `<mark>` from the toolbar. Pairs with the [Kindle highlight import](https://docs.inkdrop.app/reference/import-kindle-highlights).
- **Smarter link pasting** — paste a URL and choose a link format inline in the autocompletion menu. The page title is fetched in the background, so nothing steals focus.
- **Images** — paste or drop images into a note; they are stored as attachments and synced. Resize them with Marp-style size specifiers (`![w:320 h:240](image.png)`, `![width:50%](image.png)`), or use the resize toolbar's Auto / Small / Half / Full presets. [Docs](https://docs.inkdrop.app/reference/resize-images)
- **Smart list indentation** — <kbd>Tab</kbd> and <kbd>Shift+Tab</kbd> indent a list item by exactly the right amount for its parent (two spaces under `- `, three under `1. `), and numbered lists renumber themselves. List markers are colored by nesting level.
- **Multiple cursors and rectangular selection**.
- **30+ editing commands** — duplicate, move, join, and sort lines; change case; move by subword; expand the selection to the enclosing syntax node; select all occurrences; toggle comments (HTML comments in Markdown, or the code block language's own syntax). Most default keybindings match [Zed](https://zed.dev/).
- **Code block copy button, link tooltips, and native OS spellcheck**.
- **Editor header** — back/forward navigation, view mode buttons, an outline (`#`) button, and a distraction-free toggle. An action menu drops down from the more button or <kbd>Cmd/Ctrl+J</kbd>.
- **View options** — toggle line numbers, line wrapping, and readable line length from the View menu.
- **Little things** — checked to-dos get a strikethrough, <kbd>Alt+↑/↓</kbd> moves lines, and <kbd>↑</kbd> at the top of the note moves into the title.

## Markdown preview

- **Syntax highlighting** for 100+ languages, with language icons, line numbers, file-name headers, and a copy button on hover. Fenced `markdown` blocks are highlighted with the full GFM grammar.
- **Mermaid diagrams** — zoom, pan, and a full-screen viewer. Diagrams are themed through [CSS variables](https://developers.inkdrop.app/guides/create-a-theme#diagram-colors-mermaid), so they match your theme in light and dark mode.
- **Math** — KaTeX for inline and block equations, with equation numbering.
- **Color code preview** — a hex, `rgb()`, or `hsl()` value in backticks shows a color swatch.
- **Embed GitHub code snippets** — paste a GitHub link to a line range and Inkdrop inserts a syntax-highlighted snippet that links back to the source. Connect your GitHub account in Preferences → Integrations to get **private repos** and rich link titles for repos, issues, PRs, and commits. The token is end-to-end encrypted and synced, so you only connect once.
- **Find in preview** — matches across DOM elements, so searching inside code blocks works.
- **Image viewer** — double-click an image to look at it up close.

## Organizing notes

- **Nested notebooks** — sub-notebooks to any depth, with note counts and a default notebook. Collapse a notebook to list the notes from all its sub-notebooks. [Docs](https://docs.inkdrop.app/reference/organize-notebooks)
- **Workspace view** — narrow the sidebar to one notebook tree, with its own statuses and tags, while you're deep in a project.
- **Notebook icons** — 1,500+ [Lucide](https://lucide.dev/) icons, shown in the sidebar, Telescope, and notebook pickers, and synced across devices.
- **Manual notebook ordering** — drag and drop notebooks; the order syncs.
- **Tags** — as many per note as you like, suggested as you type, and emoji are allowed in names.
- **Note statuses** — manage notes as tasks: None, Active, On Hold, Completed, or Dropped, and filter by status. Completed and dropped notes are hidden from notebook lists by default. [Docs](https://docs.inkdrop.app/reference/note-statuses)
- **Pin to top** — keep important notes at the top of the note list. [Docs](https://docs.inkdrop.app/reference/pin-notes-to-top)
- **Bulk actions** — select several notes to move, tag, set a status on, or delete them at once. Duplicate a note with <kbd>Cmd/Ctrl+D</kbd>.
- **Trash** — deleted notes go to the Trash, where you can restore them or delete them for good.
- **Revision history** — Inkdrop saves a revision whenever you pause typing. Browse earlier versions with a diff view and restore one; a restore can be undone. Revisions are kept on each device. [Docs](https://docs.inkdrop.app/reference/revision-history)
- **Automatic conflict merging** — edits made to the same note on different devices are merged: a 3-way merge for the body, while the title, notebook, status, and tags merge without losing either side. A backup copy appears only when both sides edited the same lines.
- **Activity stats** — notes created and tasks worked on over the past 52 weeks, with your current and longest streaks.

## Search and navigation

- **Full-text search with qualifiers** — `book:`, `tag:`, `status:`, `title:`, and `body:`, plus quoted phrases and `-` exclusions, with matches highlighted. Search all notes or filter within a notebook (<kbd>Cmd/Ctrl+Shift+F</kbd>). [Docs](https://docs.inkdrop.app/reference/search-and-filter-notes)
- **Telescope** — a Spotlight-style bar (<kbd>Cmd/Ctrl+K</kbd>) that fuzzy-searches several sources at once:
  - commands (`>`), with descriptions and shortcuts
  - notebooks (`b`): open one, open it as a workspace, or move the current note there
  - tags (`t`)
  - themes (`h`)
  - the current note's headings and to-dos (`#`)

  Plugins can add their own sources. [Docs](https://docs.inkdrop.app/reference/fuzzy-finder-telescope)
- **Outline view** — jump between sections of the current note; it highlights where you are in the editor or the preview.
- **Back and forward** — move through recently viewed notes with <kbd>Cmd+←/→</kbd> (<kbd>Alt+←/→</kbd> on Windows and Linux), mouse side buttons, or a trackpad swipe on macOS.
- **Fuzzy matching everywhere** — in Telescope, the notebook and tag menus, and the tag input.
- **Quicker navigation** — filter buttons on the sidebar's Notebooks and Tags sections, a searchable notebook picker, the current sort order shown as a label, a sidebar toggle, and context menus on the workspace and note list headers.
- **New note in a separate window** — <kbd>Cmd/Ctrl+Shift+N</kbd> opens a new note in its own window, saved to the notebook you're in.

## Note templates

- **Start from a template** — press <kbd>Cmd/Ctrl+T</kbd> or the **Choose a template** button on an empty note, then search and preview before you pick.
- **Curated official templates** grouped by category (Debugging, Planning, Brainstorming, Learning, Productivity), such as bug-fix write-ups, implementation plans, and performance investigations. Recently used templates appear first.
- **Custom templates** live in their own sidebar section and use a safe LiquidJS syntax: no arbitrary code runs, even from a synced template. `_template` frontmatter presets the title (with date placeholders), description, tags, notebook, and status.
- Editing an official template forks it into your own copy.

[Docs: Note templates](https://docs.inkdrop.app/reference/note-templates)

## AI and agents

AI in Inkdrop is **opt-in** and **bring-your-own-API-key**. It supports Anthropic and any OpenAI-compatible provider, including Ollama for local models and OpenRouter. Inkdrop adds no AI surcharge, keys are kept in your OS credential store, and nothing is sent until you configure a provider. You can add custom models in `config.json`, turn every AI feature off with a single switch, and check each request's model and token usage in `ai.log`. [Docs: AI integrations](https://docs.inkdrop.app/reference/ai-integrations)

- **Inline AI assistant** — select a passage, or place the cursor, and describe the change; the result is applied in place. Presets cover proofreading, improving writing, summarizing, reformatting, converting to a table or a bullet or task list, and generating a Mermaid diagram, and you can add your own prompts. [Docs](https://docs.inkdrop.app/reference/inline-ai-assistant)
- **Next Edit Suggestions** — predicts your next edit as inline ghost text, using linked notes and backlinks as read-only context. It can run automatically, on demand with <kbd>Alt+\\</kbd> (the default), or not at all. <kbd>Tab</kbd> accepts a suggestion and <kbd>Esc</kbd> dismisses it. [Docs](https://docs.inkdrop.app/reference/next-edit-suggestions)
- **MCP server** — lets Claude Code, Codex, Claude Desktop, or any MCP client search, read, create, and update your notes, notebooks, and tags, and read and upload attachments. Preferences → Integrations → MCP Server sets everything up and hands you a ready-to-paste command. [Docs](https://docs.inkdrop.app/reference/mcp-server)
- **Agent Skills** — `npx skills@latest add inkdropapp/skills` installs two skills: `note-taking` teaches agents Inkdrop's Markdown (code-block attributes, Mermaid, KaTeX, note links), and `fill-out-template` completes a templated note and then waits for your review. They work with Claude Code, Codex, Cursor, and other agents. [Docs](https://docs.inkdrop.app/reference/agent-skills)
- **Agent-ready templates** — a template can carry instructions for AI agents in a blockquote headed `> # !Instructions`. Agents read them, and they're stripped from the notes you create.
- **Copy note, notebook, and tag IDs** — from the context menus, so you can point an agent at exactly the right note (`Summarize note:aBcD1234 and save it to book:xYz98765`).

## Your data: backup, sync, and security

- **Continuous backup (desktop)** — choose a folder in Preferences → Backup, and Inkdrop keeps writing all notes, notebooks, tags, and attachments there as JSON files while you work. Deleted items go to a `_deleted` subfolder, and you can restore the whole folder from Preferences → Backup → Restore. Backup is off until you pick a folder. [Docs: Data backup](https://docs.inkdrop.app/reference/data-backup)
- **Export** — export a note, a notebook, or all notes as Markdown or HTML.
- **End-to-end encrypted sync** — notes, notebooks, tags, and attachments are encrypted on your device with **AES-256-GCM** before they reach Inkdrop's server, and all traffic goes over TLS. The key is protected by your password through PBKDF2. [Docs: Security](https://docs.inkdrop.app/security)
- **Works offline** — everything is stored locally and syncs when you reconnect. Sync works out of the box, with no setup.
- **Three sync modes** — Inkdrop's sync server (the default), your own **self-hosted CouchDB-compatible** server, or no sync at all. [Docs](https://docs.inkdrop.app/reference/note-synchronization)
- **Two-factor authentication** — TOTP with any authenticator app, plus one-time recovery codes. [Docs](https://docs.inkdrop.app/reference/configure-2fa)
- **Your files, in the open** — config, keymaps, `styles.css`, `init.js`, plugins, and the local database live in a [user data folder](https://docs.inkdrop.app/reference/user-data-directory) you can open from Preferences. If you ever lose access to your account, a [salvage tool](https://docs.inkdrop.app/reference/salvage-data-from-local-database) can recover notes from the local database.
- **No password recovery** — Inkdrop never holds your key unencrypted, so a forgotten password means losing access to the synced data. Use a password manager and turn on backups. [Docs](https://docs.inkdrop.app/reference/recover-password)

## Import, capture, and sharing

- **Import** from [Evernote](https://docs.inkdrop.app/reference/import-from-evernote), [Apple Notes](https://docs.inkdrop.app/reference/import-from-apple-notes), [Notion](https://docs.inkdrop.app/reference/import-from-notion), [Bear](https://docs.inkdrop.app/reference/import-from-bear), Markdown files and folders, and HTML. Subfolders become nested notebooks, and images come along. The Markdown import wizard shows a scan and stats before importing, and turns embedded base64 images into attachments.
- **Web Clipper** — a Chrome and Firefox extension that clips a page's main article, or your selection, as Markdown into a chosen notebook with tags. [Docs](https://docs.inkdrop.app/reference/clip-web-pages-from-browser)
- **Mobile share sheet** — on iOS and Android, save a page as a web clip, insert its link into the open note, or copy it as a Markdown link. Shortcuts or Tasker can automate this through the `inkdrop://actions/save-link` URL.
- **Kindle highlights** — import your Kindle highlights; later imports pull only the new ones. [Docs](https://docs.inkdrop.app/reference/import-kindle-highlights)
- **Share on the web** — publish a note at a public link anyone can read without Inkdrop. Links between shared notes become web links. [Docs](https://docs.inkdrop.app/reference/share-notes-on-the-web)
- **Launcher integrations** — search and create notes from [Alfred](https://docs.inkdrop.app/reference/integrate-with-alfred) or [Raycast](https://docs.inkdrop.app/reference/integrate-with-raycast).
- **Local HTTP server** — exposes your notes to scripts, automations, and your agents' custom tools. [Docs](https://developers.inkdrop.app/data-access/local-http-server)

## Keyboard and customization

- **Customizable keymaps** — `keymap.json` binds keys to commands per context (editor, note list, or app-wide), supports multi-key sequences, and can unset or pass through any binding. Preferences lists every current binding. [Docs](https://docs.inkdrop.app/reference/key-customizations)
- **Global shortcuts** — show or hide the main window, or open a quick note, while Inkdrop is in the background.
- **Vim keybindings** — full modal editing through the [vim plugin](https://my.inkdrop.app/plugins/vim), with relative line numbers and an option to keep yanks and deletes off the system clipboard. Also available on mobile with a hardware keyboard.
- **Sublime Text keymap** — the [sublime](https://my.inkdrop.app/plugins/sublime) plugin, built on the new editor commands.
- **Your own `init.js` and `styles.css`** — script the app at startup and restyle any part of the UI with plain CSS. [init.js](https://developers.inkdrop.app/guides/the-init-file) · [Style tweaks](https://developers.inkdrop.app/guides/style-tweaks)

## Themes

- **Themes** — one theme package styles the UI, editor, and preview. A theme is a thin layer of CSS variables that overrides only what it needs to. [Guide: Creating a theme](https://developers.inkdrop.app/guides/create-a-theme)
- **Automatic light/dark** — follow the OS appearance with the default light and dark themes.
- **Live theme previews** — preview cards are rendered from each theme's palette, before you install it.
- **Official and community themes** — Kanagawa ([Wave](https://my.inkdrop.app/plugins/kanagawa-wave), [Dragon](https://my.inkdrop.app/plugins/kanagawa-dragon), [Lotus](https://my.inkdrop.app/plugins/kanagawa-lotus)), Solarized ([Light](https://my.inkdrop.app/plugins/solarized-light), [Dark](https://my.inkdrop.app/plugins/solarized-dark)), and Nord ([Dark](https://my.inkdrop.app/plugins/nord), [Light](https://my.inkdrop.app/plugins/nord-light)), plus many community themes such as Catppuccin and Gruvbox.

## Plugins and developers

- **Plugin directory** — browse and install 100+ official and community plugins from Preferences or the [web directory](https://my.inkdrop.app/plugins), with per-plugin settings and update notifications. Even the built-in Mermaid, math, and emoji support ship as plugins, installed and updated automatically. [Docs](https://docs.inkdrop.app/reference/extend-with-plugins)
- **Community favorites** — [note-tabs](https://my.inkdrop.app/plugins/note-tabs), [code-runner](https://my.inkdrop.app/plugins/code-runner), [constellation](https://my.inkdrop.app/plugins/constellation) (a note graph), [code-fold](https://my.inkdrop.app/plugins/code-fold), [embed-youtube](https://my.inkdrop.app/plugins/embed-youtube), [link-compact](https://my.inkdrop.app/plugins/link-compact), and more.
- **`ipm` CLI** — a lightweight standalone tool, [@inkdropapp/ipm-cli](https://github.com/inkdropapp/ipm-cli), to search, install, update, and publish plugins. `ipm init` scaffolds a TypeScript plugin or theme in seconds.
- **TypeScript plugin API** — official definitions in [@inkdropapp/types](https://github.com/inkdropapp/types). [Developer docs](https://developers.inkdrop.app/)
- **Use Inkdrop as a CMS** — [Live Export](https://github.com/inkdropapp/live-export) publishes notes to a static site. Start from the [Astro blog template](https://github.com/inkdropapp/inkdrop-blog-template) ([guide](https://developers.inkdrop.app/guides/create-a-blog-using-astro)).

## Desktop app

- **Platforms** — macOS 12+ (Apple Silicon and Intel), Windows 10+, and Linux (Ubuntu 22.04+), on x64 and **ARM64**. Linux builds come as AppImage, `.deb`, zip, [Snap](https://snapcraft.io/inkdrop) (amd64), and [Flathub](https://flathub.org/apps/app.inkdrop.Inkdrop). macOS is also on [Homebrew](https://formulae.brew.sh/cask/inkdrop). [Download](https://my.inkdrop.app/download)
- **System tray mode** — on Windows and Linux, Inkdrop can keep running in the tray, which keeps the local HTTP API available and makes reopening instant.
- **Corporate networks** — supports HTTP proxies, including authenticated proxies and self-signed certificates. Help → Run Network Diagnosis helps troubleshoot connections. [Docs](https://docs.inkdrop.app/reference/use-behind-web-proxy)
- **macOS niceties** — a Dark Mode-aware app icon and Look Up Selection.

## Mobile app (iOS and Android)

Full-featured apps for phones and tablets, synced with desktop. Requires iOS 15.6+ or Android 14+.

- **Same editor and renderer as desktop** — themed code blocks with line numbers, Mermaid diagrams (tap to zoom and pan full-screen), and numbered math equations.
- **Slash commands** and **`[[` note links** — the note picker shows a preview on iPad.
- **Editing toolbar** — Open Link, Highlight, and a `/` button, plus a **table toolbar** that formats tables, aligns columns, and adds, moves, or deletes rows and columns.
- **Unwrap at Cursor** — a wide table or code block stops wrapping while the cursor is in it (the default wrapping mode).
- **Hardware keyboards** — desktop shortcuts (listed in the iPad menu bar; Android uses <kbd>Ctrl</kbd> instead of <kbd>⌘</kbd>), Vim keybindings, and multiple cursors.
- **Shared with desktop** — note templates, notebook icons, and drag-and-drop notebook ordering.
- **Themes from the plugin registry** — browse, preview, and install themes such as Nord, Solarized, Catppuccin, Gruvbox, and Kanagawa. They work offline and update automatically.
- **Fast with large libraries** — a SQLite-based index keeps search, the note list, and notebook counts quick even with tens of thousands of notes, and the app opens straight into the note you were editing.
- **Also** — highlighted search results, restored scroll and cursor positions, landscape on iPhone, revision history with comparison, and the share sheet.

## Known limitations

- **Attachments are images only** — you can't attach arbitrary files.
- **Sync only through Inkdrop's server or a CouchDB-compatible one** — Dropbox, Google Drive, and iCloud aren't supported.
- **AI features need your own API key**, and the provider bills you directly.
- **Plugins run on desktop only** — mobile supports themes, not plugins.
- **No password recovery for encrypted data** — see above.
- **No free plan or lifetime license** — one subscription with a 30-day free trial. See [pricing](https://www.inkdrop.app/#pricing).

## Links

- [Overview for LLMs](https://www.inkdrop.app/llms.txt)
- [Release notes](https://forum.inkdrop.app/c/announcements/)
- [Start a 30-day free trial](https://my.inkdrop.app/signup)
- [Download](https://my.inkdrop.app/download)
- [Documentation](https://docs.inkdrop.app/)
- [Developer docs](https://developers.inkdrop.app/)
