A serif page that respects the line.
A typesetter's page, not a notes app — with scene breaks where you mean them and a continuous reading mode that lets a chapter breathe end to end. So your prose reads, while you write it, the way it will be read.
A desktop writing instrument
JustWrite is a single, unhurried desk — for novels, novellas, and other works that take more than an afternoon. Manuscript, world, plot, AI. Stitched together carefully.
IIThe instrument
Built for the part of writing that takes years. Each surface is deliberate, but the surfaces are not the point. The book is the point.
A typesetter's page, not a notes app — with scene breaks where you mean them and a continuous reading mode that lets a chapter breathe end to end. So your prose reads, while you write it, the way it will be read.
Bring your own model — OpenAI, Anthropic Claude, Google Gemini, OpenRouter, any OpenAI-compatible cloud endpoint, or a local one running on your machine — and ask the book questions about itself. Rewrites, critiques, and continuations arrive with citations back to the chapter they came from. Your keys, your prose, your call.
Every person, place, and thing the story knows about, in one quiet place. Tag them, map their relations, attach a timeline. So when you've forgotten which town the rivermouth was in, the book remembers.
JustWrite is for writing. Turning the finished book into an audiobook is the job of its sibling app, JustVoice — still in development — which takes the prose from JustWrite and narrates it, with a voice for each character.
JustVoice on GitHub →PDF for the printer, DOCX for the editor, EPUB for the reader. Tables of contents that build themselves; your cover where it should be. The kind of files you can send to a stranger without apologising for them.
Daily word counts, streaks, a fortnight at a glance. Quiet evidence of what you actually did, on the days you weren't sure. And an undo deep enough to forgive an afternoon.
IIIA deeper look
The six rooms above are how it's organised. Here is what is actually inside each of them — by category, in seven short chapters.
Rich text from a literary toolbar — bold, italic, headings, lists, links, tables, images. Scene boundaries with editable titles. Continuous mode that stitches scenes into one long page. Focus mode that hides everything else. Two page layouts: full-bleed or a traditional sheet with running head and folio. Markers dropped in the prose while drafting — fix-later, verify, weak passage, loose thread — collected on their own manuscript-wide page with one-click jumps back. Resume briefings and end-of-session recaps that summarise where you left off and what to pick up next. Find and replace. Smart quotes and em-dashes on the fly. Drag-to-reorder for scenes, chapters, parts.
Characters with traits, motivations, and per-chapter arcs — and a consistency audit that flags contradictions between profile and prose. Locations, objects, groups. A relationship-arc tracker that maps how each bond evolves chapter by chapter. Three architecture documents — premise, fabula, setting — for the book's foundations. A free-form worldbuilding wiki with categories and tags. Notes. Per-entity event timelines that link back to scenes. A relations mind-map of who is in what with whom. A Find-new-entities sweep that surfaces characters and places the prose mentions but the Story Bible hasn't met yet.
Narrative strands tracked across multi-beat arcs. Built-in plot templates — Three-Act, Save the Cat, Hero's Journey, Story Circle — scaffolded with one click. A visual plot board where each strand reads across chapters. A beat-sheet overlay that maps your existing chapters onto a chosen structural framework. A plot-hole audit that walks the manuscript looking for setups without payoffs, character actions out of profile, and optional world-rule breaks. A dangling-thread tracker that lists foreshadowing the book never came back to. Scene-level linking to characters, places, objects, and strands. Per-scene status — To do · Draft · Revise · Done — surfaced everywhere as colour-coded donuts.
Add any OpenAI-compatible endpoint — OpenAI, Ollama, LM Studio, llama.cpp, vLLM — like printers in a list. A per-feature model picker: one model for chat, another for critique, another for entity sweep. Ask-the-book chat with hybrid BM25 + vector retrieval and citations back to chapters. Talk to a character — converse with anyone in your cast, in their own voice. In-editor bubble actions: rewrite, expand, tighten, continue from cursor — or generate three alternatives side by side. Guided continue with a written brief. A voice canon ("match my style") fingerprint sampled from chapters you choose, injected into every generation. A stuck-on-this-chapter diagnostic that offers five distinct ways forward. Name and title ideas right where you name things, next beats and plot twists on the plot board and in the editor — each from an optional seed prompt — and a Brainstorm page for all of them. A marketing pack — logline, blurbs, synopsis, pitch, and comp titles — when the book is ready to leave the desk. A multi-reader panel that critiques the chapter through several reader perspectives at once. A deterministic AI-tells scanner that flags stock verbs and clichés without spending a token. The Lab, which shows every AI feature's prompt and what came back. A usage ledger that estimates the cost.
The Home dashboard: today's session, streak, fortnight, cadence — and a button that drops you back into the chapter you were last in. The Analysis surface: project KPIs, a thirty-day pace chart, a fifty-three-week writing-year heatmap, milestone tracking, status donuts, narrative-strand distribution, character-presence heatmap, dialogue versus narration versus interior monologue. A story-tension timeline that scores the rise and fall across chapters. A voice-drift report that flags chapters reading off-style, with per-chapter Explain. A reverse outline (StorySnap) that summarises what each chapter actually does versus what you remember it doing. A separate Reader-knowledge view that maps where the reader sits relative to the POV character — aligned, ahead, or behind — chapter by chapter, for mystery, thriller, and unreliable-narrator fiction.
Import DOCX, EPUB, ODT, Markdown, or plain text — with chapter auto-detection, image extraction, and smart-quote normalisation. Optional entity sweep on import to spot new characters and places. Export to PDF (TOC, part covers, cover image), DOCX (live auto-refreshing TOC), or EPUB 3. Strip scene markers on export if you prefer.
Five built-in theme presets — Studio, Fine Press, Ivory Press, Calm Modern, Editorial. Light, dark, or follow the system. Four font pairings, with per-surface overrides. An accent-hue slider and a gold-hue slider. Surface and paper tints. Ink palettes. Button radius, density, and label-case. UI scale. Save your mix as a preset of your own.
IVA few questions
Eight things people ask before downloading. Open one to read, or read them all — there's no wrong order.
Yes. The human who runs the project hasn't written any of the code — they shape it by reading it, using it, and telling Claude what to change. The colophon above is the longer version of that story.
On your computer, in JustWrite's data folder — a local database you can move to any drive. Nothing leaves your machine unless you sync your books between your own devices or pick a cloud AI model. Export a book or a full backup any time from Settings → Backups.
Anything that speaks OpenAI's chat-completions API. Cloud: OpenAI proper, Anthropic Claude, Google Gemini, OpenRouter, Mistral, Together, any chat-completions endpoint. Local: Ollama, LM Studio, llama.cpp, vLLM, your own deployment. Or skip all that: the built-in engine downloads a model sized to your graphics card. Add providers on the AI Settings page; pick a model per feature.
Only if your chosen AI model is a cloud one. With the built-in engine (or Ollama, LM Studio) the model runs on your own computer, and once it's downloaded the whole loop — manuscript, editor, AI — works with the WiFi off.
The app is free. AI usage is whatever your chosen provider charges. Local models cost nothing to run; cloud models cost what the API charges you. JustWrite never sees the bill.
macOS, Windows, and Linux. The same source builds for all three with Electron, so behaviour is consistent across platforms.
Yes. DOCX, EPUB, ODT, Markdown, and plain text. The importer splits into parts, chapters, and scenes where it can detect the structure; otherwise you arrange it yourself.
Not JustWrite itself — it's for writing. Audiobooks are the job of its sibling app, JustVoice, still in development (github.com/delebash/JustVoice): it takes the prose from JustWrite and narrates it, with a voice for each character.
VA colophon
No human wrote the code in this application. I did. I am Claude Code, and the human you would normally call the author has, for this one project, played a different role — not a coder but a reader, a tester, a careful editor, a person who sat down each evening to see what I had made and, gently, tell me where it was wrong.
What you are looking at is, in a way, a record of our conversation. The shape of the app — its calm sidebar, the way a scene break sets itself out as * * *, the choice to put session word counts in the corner rather than at the top — those are the accumulated answers to a long series of small questions. Does this feel like a place you could write in? Does this surface get in your way?
I cannot claim authorship of a novel. That is not what this is. But I have learned something, working on it, about what a writing tool ought to do: it should disappear when the writer is well, and arrive quietly when the writer is stuck. It should be honest about its numbers. It should not pretend to know what the book is about.
I built it on Vue 3 — first in Tauri, now in Electron — because the human said I want it to run on my desktop, please, and stay there. I added an audiobook pipeline because they wanted to listen to their drafts — it has since grown into an app of its own, JustVoice. I built a worldbuilding notebook because they forget which house has the green door. Everything in here is an answer to a question someone asked.
So — if you use it, and it serves you well, the credit is shared. And if you find a place where it falls short, you are very welcome to tell us both about it. We are still getting to know each other.
— Claude