Getting Started
inkwell is a local-first markdown editor for macOS. Your notes are stored as plain .md files in a folder you choose — no sign-up, no cloud, no lock-in.
Install
- Download the latest
.dmgfrom the Releases page. - Open the disk image and drag inkwell.app to /Applications.
- On first launch, macOS may show a security prompt — click Open Anyway in System Settings → Privacy & Security.
Open a vault
A vault is any folder on your Mac. inkwell stores all notes as .md files inside it, preserving your folder structure exactly.
- Click Open Vault on the welcome screen.
- Select a folder (or create a new one).
- inkwell loads all
.mdfiles it finds and shows them in the sidebar.
Create your first note
Press ⌘N or click the + button in the sidebar. Type a title and start writing. Notes are saved automatically — there is no Save button.
Editor
inkwell uses CodeMirror 6 for a fast, distraction-free writing experience with live markdown syntax highlighting.
Split view
Click the split-view icon in the toolbar (or press ⌘⇧P) to open a rendered preview alongside the editor. The preview updates live as you type. Click the icon again to return to the focused editor.
Markdown support
inkwell renders full GitHub Flavored Markdown including tables, task lists, strikethrough, code blocks with syntax highlighting, blockquotes, inline images, and footnotes.
# Heading 1
## Heading 2
**bold**, _italic_, ~~strikethrough~~, ==highlight==
- [x] Done task
- [ ] Open task
| Col A | Col B |
|-------|-------|
| cell | cell |
```javascript
const note = "write here"
``` Frontmatter
Every note gets automatic YAML frontmatter on creation. You can edit it directly or leave it alone — inkwell uses it to store metadata like tags, pinned state, and timestamps.
---
id: note_abc123
title: My Note
created: 2025-01-15T10:30:00.000Z
updated: 2025-06-01T09:14:00.000Z
pinned: false
tags: [writing, ideas]
--- Font & display settings
Open Settings → Editor to adjust the font family (sans-serif, serif, or monospace), font size, and line spacing. Changes apply instantly without restarting.
Canvas
A full drawing canvas lives alongside your notes. Sketch diagrams, flowcharts, and mind maps using a custom HTML5 drawing engine — no third-party libraries, no export needed.
Opening the canvas
Click the Draw icon in the sidebar (or enable it in Settings → General → Canvas). The canvas is shared across your entire vault and saves automatically to .inkwell/canvas.json.
Tools
Click to select shapes. Shift-click to add to selection. Drag empty space to rubber-band select. Double-click a text shape to edit its content.
Free-hand drawing. Drag to draw smooth curves.
Drag to draw a rectangle. Hold ⇧ to constrain to a square.
Drag to draw an ellipse. Hold ⇧ to constrain to a circle.
Click and drag to draw a straight line. Hold ⇧ to snap to 45° angles.
Like Line but with an arrowhead at the endpoint. Shift to snap angles.
Click anywhere on the canvas to place text. Press Enter to confirm, Esc to cancel.
Shape styling
Select a shape to see its options in the toolbar: stroke colour (12-colour palette), fill toggle, stroke width (thin/medium/thick), and corner radius for rectangles. Text shapes also expose font family, size, bold, and italic controls.
Selection & editing
- Drag corner handles to resize a selected shape.
- Drag the shape itself (or any selected shape in a multi-selection) to move.
- Double-click a text shape to edit its content in an inline input.
- ⌘D duplicates all selected shapes.
- ⌘A selects everything on the canvas.
- Delete or ⌫ removes selected shapes.
- ⌘Z / ⌘⇧Z undo / redo.
Templates
Click the Templates button in the toolbar to load a ready-made diagram. The canvas fits it to the viewport automatically. Available templates:
- Flowchart — Start, two steps, and End with arrows.
- Mind Map — Central topic with six branches.
- Org Chart — CEO with two managers and three reports.
- Sequence Diagram — Two actors with request / response / callback arrows.
- Timeline — Four milestones on a horizontal axis.
- Venn Diagram — Two overlapping labelled sets.
Canvas notes
Click the note icon (top-right of the canvas) or press ⌘/ to open a markdown notes panel. It slides in from the right at half the canvas width — the canvas stays fully interactive while the panel is open. Notes are saved to .inkwell/canvas-notes.md in your vault.
Navigation
Scroll (or two-finger swipe) to pan. Pinch or ⌘+scroll to zoom. Hold Space and drag to pan with the hand tool.
Organisation
Folders & notes
The sidebar shows your vault's folder structure. Create folders with the + button next to any folder, or drag notes between folders to reorganise. Folders map 1:1 to real directories on disk.
Double-click any note or folder name (or right-click → Rename) to rename it inline. The file on disk is renamed at the same time.
Pinned notes
Right-click a note and choose Pin to keep it at the top of the sidebar. Pinned notes appear in a dedicated section above the rest of your library.
Search
Press ⌘K to open full-text search across every note in your vault. Results update as you type.
Kanban board
Click the Board icon in the sidebar to open the Kanban view. Create multiple boards, add columns and cards, set due dates, write subtasks, and leave comments on cards. Boards are stored in your vault's .inkwell folder.
Note links
Open the Links panel in the editor toolbar to connect notes to each other. Linked notes appear in a panel below the editor and are tracked bidirectionally.
Attachments
Drag files onto the Attachments bar at the bottom of the editor to attach images, PDFs, or documents to a note. Attachments are stored in .inkwell/attachments/ inside your vault. Embed an attachment inline with ![[filename]] syntax.
Trash
Deleted notes are moved to the Trash section at the bottom of the sidebar. They are not removed from disk until you empty the trash — so you can recover them.
Themes
inkwell ships with eight hand-crafted themes. Switch any time from Settings → Themes.
Custom themes
Open Settings → Themes → New Custom Theme to build your own. The live preview updates instantly as you adjust the background, accent, and text colours. Custom themes are stored in your vault's app data and travel with it.
Syntax highlighting
Code block syntax colours are derived automatically from the active theme's accent colour — you don't need to configure anything.
Export
Click the Share icon in the editor toolbar to open the export dialog. A live preview shows exactly how the output will look.
Raw .md file — identical to what's on disk, including YAML frontmatter.
Self-contained HTML file with inline styles that match the current theme. Open in any browser.
Rendered via the system print dialog. Choose paper size and margins before saving.
You can also click Copy to clipboard to paste the rendered Markdown or HTML anywhere.
GitHub Sync
Push any note to a GitHub repository as a .md file, and pull the latest version back in with one click.
Setup
- Open Settings → GitHub.
- Enter a Personal Access Token with
reposcope (create one at github.com/settings/tokens). - inkwell saves the token securely in your system keychain.
Push a note
- Open the note you want to sync.
- Click the GitHub icon in the editor toolbar.
- Choose the repository, branch, and file path.
- Click Push. inkwell commits the note as a
.mdfile.
Pull a note
In the GitHub sync dialog, click Pull to fetch the latest version of the file from GitHub and overwrite the current note content.
Claude MCP
inkwell ships a native Rust MCP server so Claude can read, write, and search your vault directly — without copy-paste.
How it works
The inkwell-mcp binary is bundled inside the app. It communicates with Claude Desktop (or any MCP-compatible client) over stdio using JSON-RPC 2.0. It reads the active vault path from ~/.inkwell/active-vault, which inkwell writes whenever you open a vault.
Setup
- Build the MCP server binary (or use the one bundled in the app):
cd src-tauri && cargo build --release -p inkwell-mcp - Add it to your Claude Desktop config at
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"inkwell": {
"command": "/Applications/inkwell.app/Contents/MacOS/inkwell-mcp"
}
}
} - Restart Claude Desktop. Open a vault in inkwell. Claude now has access to your notes.
Available tools
list_notes Returns all notes in the vault with their title, path, tags, and timestamps.
read_note Returns the full content of a note by ID or path (frontmatter stripped).
create_note Creates a new note with a given title and content. Adds YAML frontmatter automatically.
update_note Overwrites the content of an existing note by ID.
search_notes Full-text search across all notes. Returns matching notes with a relevance score.
get_vault_info Returns vault metadata: path, note count, folder structure, and active theme.