Dan King64 downloadsA complete workbench for novelists. Plan with beat sheets and a story bible, draft with sprints and goals, revise with an audit toolkit, and prepare to publish.
A local-first writer's suite for longform fiction in Obsidian. Plan, draft, track, revise, and prepare to publish with Inkswell. My goal is to build the best end-to-end plugin toolkit for writers, especially those working on large series longform projects.

longform frontmatter, so existing projects load with zero migration. Inkswell-only data lives under a separate inkswell key to avoid collisions.Five pipeline phases — Home · Plan · Write · Revise · Publish — plus two cross-cutting tools, Codex and Track, that you reach for at any stage.
| Surface | What it's for |
|---|---|
| Home | Projects, a nestable scene tree, ideas inbox + quick capture, and series grouping for multi-book worlds. |
| Plan | Beat sheets (7 outline templates incl. Save the Cat!) and a Kanban Board (by status / act / POV). |
| Write | A distraction-light Live-Preview editor, writing prompts, fast-drafting placeholder tokens, and timed sprints. |
| Revise | An Audit toolkit, the invisible-revision Log, a Todos sweep for placeholder markers, and manuscript Analysis. |
| Publish | A configurable compile/export pipeline plus a self-publishing checklist and launch planner. |
| Codex | A story bible — characters, locations, worlds, factions, items, events, and concepts — with scene linking and mention auto-detect. |
| Track | Word goals, streaks, a GitHub-style heatmap, lifetime records, a deadline pace calculator, and milestone zones. |
Projects and a nestable scene tree, an ideas inbox with quick capture, and series grouping for multi-book worlds, all behind a global project switcher.

Beats (7 outline templates incl. Save the Cat!, with scene scaffolding) and a Board (Kanban by status / act / POV).

A distraction-light, Live-Preview manuscript editor with writing prompts and timed sprints. Fast-drafting placeholder tokens — [TODO: …], [RESEARCH: …], [DIALOGUE: …], [SCENE: …], [NOTE: …] — highlight as you type, so you can mark a gap and keep moving forward. Find them all later in the Revise → Todos sweep.

[TODO], [RESEARCH], …) across the manuscript.
A configurable compile/export pipeline (Markdown & HTML built in; .docx / .pdf / .epub via pandoc when installed) with a step editor, chapter grouping, and a pre-export check. Plus a self-publishing Checklist (master checklist + book-metadata worksheet) and a Launch planner — pre-order timeline, budget, cover, marketing, and ARC trackers.

Characters, locations, worlds, factions, items, events, and concepts, each with its own profile and linked scenes, plus mention auto-detect so your canon stays consistent as the manuscript grows. Can be scoped for single writing projects, or shared across a series.

Daily / weekly / monthly word goals, habit streaks, a GitHub-style heatmap, lifetime records, a writing-history chart, sprint stats, a deadline pace calculator (required daily words, ahead / on-track / behind), draft-milestone zones, and an optional daily mood.

data.json..docx / .pdf / .epub shells out to a pandoc binary on your machine. It's feature-detected and disabled gracefully when pandoc isn't present; Markdown and HTML export need nothing extra.isDesktopOnly). A focused mobile view (idea capture + read-only review) is planned for a future release.Requirements: Obsidian 1.7.2+ (pandoc optional, for .docx / .pdf / .epub).
main.js, manifest.json, and styles.css from the latest release into <vault>/.obsidian/plugins/inkswell/, then enable Inkswell in Community plugins.Open Inkswell from the pen-tip ribbon icon or the "Open Inkswell" command.
examples/sample-vault/ is a complete, openable vault containing a mid-draft novel — The Lamplighter's Archive — wired up to exercise every Inkswell surface: beats, scenes, Codex, a populated Track dashboard, the revision audit, a compile recipe, and the self-publishing planner. Run npm run build:sample, then Open folder as vault on examples/sample-vault. See examples/README.md for details.
npm install
npm run dev # watch build into main.js
npm run build # typecheck + production bundle
npm test # unit tests (vitest)
Copy main.js, manifest.json, and styles.css into <vault>/.obsidian/plugins/inkswell/ to test in a real vault. Architecture, conventions, and the compile/version workflows are documented in AGENTS.md.
This plugin was developed with the assistance of agentic AI coding tools and practices. I have a mandate at work to learn AI tooling, and I wanted to channel that practice into something useful for a community I love - hopefully this counts as that. Direction, architecture, scope, and review are all handled by me; much of the implementation was AI-assisted under that direction. That said, there is absolutely NO AI-generation in the plugin itself. I used agents to help build it, but the plugin itself has a strict "No AI" policy and no AI or word generation features will ever be added.
MIT © Daniel King