Release History

Changelog

New releases are distributed as ZIP downloads on this page.

v1.10.0 July 11, 2026

What's New

Image Galleries

Create native WordPress galleries without leaving Quill. The new gallery button opens a multi-select media picker with a reorderable selection pane and controls for columns, crop, link destination, and image size. Upload new images directly from the sheet, and they're added to the gallery you're building. Galleries save as proper Gutenberg wp:gallery/wp:image block-comment HTML, and existing galleries round-trip verbatim (preserving captions and other details the structured attributes don't model).

Link to Full Image

Images now have a "Link to Full Image" toggle in the image toolbar, wrapping the image in a link to its full-resolution original. Works for images sourced from your media library as well as dragged-in or pasted images without a media ID.

Improvements

  • Code view preserves classes — Editing raw HTML in code view and switching back to the visual editor no longer strips CSS classes from any element.
  • Taxonomy cache auto-refresh — Opening a post that references a tag or category created after the last cache refresh now re-fetches the taxonomy list automatically.
  • Editor scroll reset — Switching between posts resets the editor scroll position instead of inheriting the previous post's scroll offset.

Fixes

  • Hardened network error handling, sidebar remount guards, and MIME-type lookups.
  • Fixed a post-switch state race, a toast auto-dismiss timer bug, a cite regex edge case, and update-check retry behavior.
  • Gallery block-comment wrapping no longer accumulates orphaned whitespace between images on repeated saves.
  • Gallery picker no longer shows a stuck spinner when no credentials are configured.
  • Gallery Size picker's "Link to Full Image" now links to the true full-resolution original, not the display-size URL.
v1.9.0 June 26, 2026

What's New

Cmd+Click to Open Links

Hold Cmd and click any link in the editor to open it in your default browser. A visual indicator (pointer cursor + underline) appears while Cmd is held. Fragment-only links (footnote anchors) are correctly skipped.

Update Checker

Quill now checks for new versions on launch and shows a dismissable banner in the sidebar when an update is available.

Editor Overscroll & Block Editing

The editor now has bottom overscroll so you can keep writing without the cursor pinned to the bottom of the window. Enter in image captions exits to a new paragraph. Blockquotes have a new Enter behavior (split or exit) and a cite toggle button in the toolbar.

AI List & Table Context

AI writing operations (Make Longer, Make Shorter, To Table, To List) now detect when your selection is inside a list or table and replace the whole container intelligently, instead of inserting fragments mid-structure.

Improvements

  • Footnote content restrictions — Footnotes are now limited to inline-only elements; images, tables, and other block content are blocked on drop and paste. Keyboard shortcuts for block-level operations are disabled inside footnotes.
  • Classic content support — Pre-Gutenberg posts (no <!-- wp: --> block comments) are now run through wpautop() on load for proper paragraph and line-break rendering.
  • Empty states — Sidebar sections and the editor now show placeholder messaging when empty instead of blank space.
  • HTML entity decoding — Post and media titles with HTML entities (smart quotes, ampersands, etc.) now display correctly throughout the UI.
  • HTTP image loading — Old posts with http:// image URLs now load correctly in the editor.
  • Media picker pagination — The media picker sheet now paginates and has a cancel button.
  • Dark mode links — Links in the editor are now readable in dark mode.
  • Credential validation — The settings dialog now validates credentials before saving.

Fixes

  • Excerpt field no longer adopts WordPress's auto-generated excerpt on load.
  • Footnote back-arrow positioned outside text flow (no longer shifts footnote text).
  • Backspace and Delete now work correctly inside footnotes.
  • Blockquote Enter respects depth guard for nested structures (tables, lists inside blockquotes).
  • Image toolbar scroll handler leak and position clamping fixed.
  • Anthropic web search citation tags stripped from AI-generated posts.
  • Loading spinners no longer get stuck when credentials are nil.
  • No more light-mode flash when loading the editor in dark mode.
  • Error toast shown when local draft save fails.
  • AI prompt uses correct <ol> tag for ordered lists.
v1.8.0 June 18, 2026

What's New

Post Evaluation

AI-powered writing critique panel. Click the checkmark-circle button in the editor toolbar to analyze your post and get categorized findings — Grammar, Clarity, Readability, Wordiness, Passive Voice, Tone — with click-to-jump navigation to the flagged passage in your draft. Style-aware: respects your established voice when judging.

AI Buttons in the Editor Toolbar

The Generate (pencil) and Evaluate (checkmark-circle) buttons now live inside the Tiptap formatting toolbar, alongside Bold, Italic, and other controls, instead of in the SwiftUI window chrome.

New App Icon

Refreshed icon for v1.8.0.

Improvements

  • Polished confirmation sheets — Revert, Replace, Conflict, and Truncation dialogs have updated styling.
  • Sorted categories and tags — Categories and tags in the Post Settings panel are now sorted alphabetically.
  • Toolbar tooltip tweaks — Arrow alignment and copy improvements.

Fixes

  • Evaluation task is now cancelled when switching posts, preventing stale results from appearing on the wrong post.
  • Fixed generate dialog title and jump-to-finding focus behavior.
  • AI overwrite alert no longer triggers on posts with no real content.
  • Fixed adjacent inline elements collapsing in text extraction.
v1.7.0 June 16, 2026

What's New

Sidebar Toggle

A new button in the editor toolbar lets you hide and show the left sidebar panel, giving you a distraction-free full-width writing view.

WordPress Block Comments in Code View

The HTML code view now preserves WordPress block comments (e.g. <!-- wp:paragraph -->) when you open it, so you see the same raw markup WordPress stores — not just the stripped inner HTML. Edits made in code view are synced back immediately, so ⌘S saves without requiring you to exit code view first.

Improved Non-Image Media Panel

The media detail panel for audio, video, and document files now shows richer metadata and displays the file extension (e.g. MP4, PDF) in the Type field instead of a MIME type string.

Quill Help

The Help → Quill Help menu item now opens the online documentation at cpoteet.github.io/Quill-Releases/docs.html.

Fixes

  • Code view no-op exit — exiting code view without making any edits no longer calls setContent, which previously caused compounding whitespace and wiped Tiptap's visual state unnecessarily.
  • Page status in sidebar — pages now show their status dot (Draft, Published, etc.) in the sidebar row, consistent with posts.
v1.6.0 June 12, 2026

What's New

Footnotes

Full footnote support, end to end. Insert a footnote via the toolbar button or right-click menu — a numbered superscript marker appears inline and a matching entry is added to the footnotes list at the bottom of the document. FootnoteSync keeps markers and list entries in sync as you write: delete a marker and its list entry is removed; reorder content and numbers update automatically. Each list entry has a back-arrow (↩) that jumps back to the marker. Footnote numbers and back-reference anchors are written as Gutenberg-compatible HTML on save.

Embed Blocks

Paste a URL from YouTube, Twitter/X, Vimeo, Spotify, or 20+ other providers and Quill renders a static embed card in the editor — visually distinct from a paragraph, but stored as a proper Gutenberg wp:embed block. Provider-specific CSS classes are applied automatically so WordPress renders the correct embed player on publish.

Find & Replace

A find & replace bar now lives at the top of the editor. Press ⌘F to open it, type to highlight all matches, and step through them with the arrow buttons. The Replace field lets you swap individual matches or all at once. Dismissed with Escape or by clicking outside.

Live Stats

The settings panel now shows live word count, character count, and estimated reading time, updated as you type. Stats freeze while code view is active and refresh on exit.

Private and Pending Review Statuses

Two new statuses are available in the status picker: Private (published but visible only to logged-in users with sufficient permissions) and Pending Review (held for editorial sign-off). Both appear with their own sidebar dot color and are handled correctly in publish/update flows.

Discard Changes

A Revert button is now available in the editor toolbar when a post has unsaved changes. Clicking it discards all local edits since the last save and restores the last-saved version.

Status Badge

The breadcrumb at the top of the editor has been replaced with a live status badge showing the current post status (Draft, Published, Scheduled, etc.). The badge updates immediately when status changes.

Improvements

  • Streaming media uploads — files are now streamed directly from disk using URLSession.upload(for:fromFile:), avoiding loading the entire file into RAM before uploading. Helps with large images and videos.
  • Settings panel note for local drafts — a brief info note now appears in the settings panel when editing a local draft, clarifying that categories, tags, and other metadata are set after publishing to WordPress.
  • Toolbar tooltip polish — keyboard shortcuts removed from Undo, Redo, Bold, Italic, and Underline tooltips; "Ordered list" renamed to "Number list"; "Insert 3×3 table" shortened to "Insert table"; embed input now shows an "Insert media link" placeholder.

Fixes

  • Startup flash — eliminated the white blank flash when the app first launches and the "Start writing…" placeholder flash when switching posts.
  • Sidebar row hit testing — the entire sidebar row is now clickable, not just the title text area.
  • Editor/settings clearing — switching sidebar sections (Posts → Media, etc.) now correctly clears the editor and settings panel rather than leaving the previous post visible.
  • Media selection — switching between sidebar tabs now clears the selected media item, preventing stale detail panels.
  • Image selection outline — the default ProseMirror blue outline on the image wrapper is suppressed; only the custom resize-handle selection indicator is shown.
  • Panel style consistency — sidebar and settings panel backgrounds, borders, and shadow clipping are unified across all views.
v1.5.0 June 7, 2026

What's New

Image Captions

Images now support inline captions. Click an image to select it, then type below it to add a caption — saved as a Gutenberg <figcaption> block.

Alt Text

Images now carry alt text end-to-end: pre-populated from the WordPress media library when inserting, editable in the Media detail panel, and written to the <img alt="..."> attribute on save.

Class & Attribute Preservation

Custom HTML classes and attributes (e.g. hand-edited in code view) are now preserved when Tiptap round-trips the document through its schema.

Interface Adjustments

The editor toolbar has been restyled with SVG icons and a heading-level dropdown replacing the separate H1–H6 buttons, with tooltips added to every control. The Media sidebar toolbar buttons now match the style of the Posts and Pages sidebars. The editor also updates its color scheme immediately when the system appearance changes while the app is open.

Fixes

  • Spelling suggestions — Right-clicking a red-underlined word now shows up to 8 suggestions at the top of the context menu.
  • Media tab reload — The Media tab always reloads when switched to, fixing a bug where a partial cache prevented new uploads from appearing.
  • Image Reset button — Reset now correctly restores the full-resolution image source and original dimensions, not just clears inline size constraints.
  • Resize handles — Resize handles are now positioned relative to the image frame only, so they no longer misalign when a caption is present.
  • Context menu leaks — macOS AutoFill and Services items no longer leak into the editor or title field right-click menus.
v1.4.0 June 6, 2026

What's New

About Window

Quill now has an About window (Quill → About Quill) showing the version, copyright, and third-party notices for Tiptap, ProseMirror, and SQLite.swift.

Code View

A new </> button at the far right of the editor toolbar switches between the visual Tiptap editor and a raw HTML textarea. The HTML is pretty-printed on entry and parsed back into Tiptap when you return to visual mode — useful for inspecting or hand-editing Gutenberg block markup.

Keyboard Shortcuts

Three new File menu shortcuts: ⌘N New Post, ⌘⇧N New Page, and ⌘⌥N New Media.

Fixes

  • Link attributes — Links no longer add target="_blank" or rel="noopener noreferrer nofollow" to every anchor, keeping saved HTML clean.
  • AI generate prompt — The prompt textarea is now locked while Claude is generating, preventing accidental edits mid-generation.
  • Code view save — Exiting code view now correctly fires contentChanged so edits made in raw HTML are saved rather than silently dropped.
  • Code view scroll — Code view opens scrolled to the top instead of the bottom.
v1.3.0 June 2, 2026

What's New

Blockquote Citations

Blockquotes now include an optional citation line. Toggling a blockquote auto-inserts a <cite> node; Enter/Backspace handle it gracefully. The cite element is omitted from saved HTML when empty, producing clean Gutenberg output.

AI Context Menu

AI writing operations (Make Longer, Make Shorter, To Table, To List) moved from a floating pill to the right-click context menu, appearing only when text is selected and an API key is configured.

Fixes

  • Excerpt field — Post excerpts now load correctly from remote posts and display in the settings panel with consistent styling.
  • Taxonomy fetching — Categories and tags are now fetched with pagination support, so sites with large taxonomies load completely.
v1.2.0 May 29, 2026

What's New

Extended Heading Levels

H4, H5, and H6 now appear in the heading dropdown alongside H1–H3, giving you the full HTML heading range without leaving the editor.

File Menu Commands

File → New Post and File → New Page create a local draft and open it immediately — no need to navigate the sidebar first. File → New Media… switches to the Media tab and opens the upload panel in one step.

Editor & Interface Polish

The writing canvas is now white, giving the editor a cleaner, more focused feel. Settings panel rows are roomier, the sidebar tab selection and new-item button are more visually distinct, and the media detail view has been redesigned with a two-column layout.

Fixes

  • AI result acceptance — Gutenberg HTML transformation is now correctly applied when accepting an AI rewrite, matching the output of a manual save.
  • AI selection pill — the ✦ pill now anchors below the selected text rather than floating above the bounding box.
  • Unsaved changes toast — the "Unsaved changes restored" notice no longer appears incorrectly when opening a server post with no pending local edits.
  • Media grid hit-testing — thumbnail clicks in the media browser now register at the correct position after scrolling.
  • Gutenberg HTML fidelitytoWordPressHTML output more closely matches what the WordPress block editor produces, reducing round-trip diffs.
v1.1.0 May 26, 2026

What's New

Spell Checking

On-demand spell check via the ABC toolbar button. Misspelled words are underlined in red; right-clicking a highlighted word shows system correction suggestions. Squiggles clear as you edit.

Offline Editor Loading

Tiptap is now bundled locally rather than fetched from a CDN at launch. The editor loads instantly from disk with no network dependency.

Loading States

A spinner now appears while the post list is loading from WordPress and while the editor is initializing — replacing a blank white panel.

Fixes

  • Save Draft for local drafts now writes only to SQLite and never touches the WordPress API. Previously it would attempt a WordPress save and fail for unpublished local items.
  • ⌘S on remote posts now correctly triggers Update rather than showing the Save Draft button.
  • Conflict-detection baseline is now refreshed from the server each time a post is opened, preventing false "edited elsewhere" warnings on re-open.
  • Spell-check squiggles now clear only the word being edited rather than wiping all highlights on the first keystroke.
v1.0.0 May 24, 2026

Initial Release

  • Post & page editor — Full rich text editing with Tiptap, producing clean Gutenberg-compatible HTML. Headings, lists, blockquotes, code blocks, tables, bold, italic, inline code, and links.
  • WordPress sync — Create, edit, publish, schedule, and trash posts and pages via the WordPress REST API. No plugin required — uses Application Passwords.
  • Local drafts — Write offline and publish when ready. Drafts are stored in SQLite.
  • Media library — Browse your WordPress media library, insert images into posts, and resize or align them inline.
  • Image tools — Drag images from Finder directly into the editor. Resize with drag handles. Align left, center, or right with Gutenberg-compatible output.
  • Link picker — Insert and edit links with a popover search across your existing posts and pages.
  • Post settings — Manage categories, tags, slug, excerpt, scheduling, and discussion settings.
  • AI writing assistant — Generate posts or rewrite selections using Claude, tuned to your writing style.
  • Dark mode — Full light and dark mode support throughout.