Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>Inkwell Markdown PreviewNew to Visual Studio Code? Get it now.
Inkwell Markdown Preview

Inkwell Markdown Preview

Artifex

| (0) | Free
Beautiful markdown preview with built-in themes, full typography control, browser/editor modes, and one-click PDF export
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Inkwell Markdown Preview

A VS Code extension that previews Markdown with full CSS theming control, dual preview modes (browser window or editor panel), bidirectional scroll sync, and PDF export.

Inkwell light theme preview Inkwell dark theme preview

Features

  • Browser preview (default) — opens in your system browser, perfect for a second monitor
  • Editor preview — side-by-side panel within VS Code
  • Live reload — preview updates as you type
  • Scroll sync — bidirectional, interpolated scrolling between editor and preview
  • PDF export — styled PDF output via system Chrome
  • Built-in themes — GitHub, Nord, Dracula, Solarized, and more
  • Full theme control — customize every color, font, and spacing via settings
  • Custom CSS — point to your own stylesheet for complete control
  • Light/dark modes — auto-detects your VS Code theme, or set explicitly

Usage

Open any Markdown file and click the preview button in the top-right corner of the editor (or press Cmd+K V / Ctrl+K V).

Commands

Command Description
Inkwell: Open Preview Open preview using configured mode
Inkwell: Open in Browser Open preview in system browser
Inkwell: Open to Side Open preview in editor side panel
Inkwell: Export as PDF Export current file as styled PDF
Inkwell: Toggle Scroll Sync Enable/disable scroll sync

Theme Customization

Built-in Themes

Set inkwell.builtinTheme to one of: github (default), nord, dracula, solarized, brand, paintify.

Fonts & Layout

{
  "inkwell.fontFamily": "Inter, sans-serif",
  "inkwell.fontMono": "JetBrains Mono, monospace",
  "inkwell.fontSize": "15px",
  "inkwell.lineHeight": "1.8",
  "inkwell.contentWidth": "800px"
}

Colors

Override any color independently for light and dark themes:

{
  "inkwell.lightTheme": {
    "bg": "#fafafa",
    "fg": "#333333",
    "link": "#0055aa",
    "codeBg": "#f0f0f0",
    "headingBorder": "#dddddd"
  },
  "inkwell.darkTheme": {
    "bg": "#1a1a2e",
    "fg": "#e0e0e0",
    "link": "#7cb3ff",
    "codeBg": "#16213e"
  }
}

Available color keys: bg, fg, fgMuted, link, border, codeBg, codeFg, blockquoteBorder, blockquoteFg, tableBorder, tableStripe, headingBorder, selection, highlight.

Custom CSS File

For full control, point to your own CSS file. It loads last, so it overrides everything:

{
  "inkwell.customCssPath": "/path/to/my-theme.css"
}

The preview uses CSS variables throughout, so your custom CSS can override just the variables:

:root {
  --bg: #fdf6e3;
  --fg: #657b83;
  --link: #268bd2;
  --font-body: 'Literata', Georgia, serif;
}

Settings Reference

Setting Default Description
inkwell.previewMode "browser" "browser" or "editor"
inkwell.serverPort 3800 Local server port for browser mode
inkwell.theme "auto" "auto", "light", or "dark"
inkwell.builtinTheme "github" Built-in color theme preset
inkwell.fontFamily "" Body font family
inkwell.fontMono "" Monospace font for code
inkwell.fontSize "" Base font size (default: 16px)
inkwell.lineHeight "" Body line height (default: 1.6)
inkwell.contentWidth "" Max content width (default: 900px)
inkwell.lightTheme {} Light theme color overrides
inkwell.darkTheme {} Dark theme color overrides
inkwell.codeBlockTheme "auto" Code syntax theme: "auto", "light", "dark"
inkwell.customCssPath "" Path to custom CSS file
inkwell.scrollSync true Enable bidirectional scroll sync
inkwell.chromePath "" Chrome path for PDF (auto-detected)
inkwell.pdfFormat "A4" PDF paper format
inkwell.pdfMargin {top:"1cm",...} PDF page margins

PDF Export

Uses your system Chrome installation (auto-detected on macOS, Linux, and Windows). The exported PDF includes all your theme customizations. Set inkwell.chromePath if auto-detection doesn't find your Chrome.

Development

npm install
npm run build    # production build
npm run watch    # development with auto-rebuild

Press F5 in VS Code to launch the Extension Development Host for testing.

Tech Stack

  • markdown-it — Markdown parsing
  • shiki — Syntax highlighting with VS Code-accurate TextMate grammars
  • ws — WebSocket server for browser mode live reload
  • puppeteer-core — PDF export via system Chrome
  • esbuild — Fast bundling

Support

If you find Inkwell useful, consider buying me a coffee.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft