Skip to main content

Release Notes 1.0.0

New Features

Auto-Update Source Notes After Sync

Source notes can now be refreshed automatically when a sync completes. Enable the new Auto-update source notes after sync toggle in Settings → Sync to have ZotFlow incrementally re-render source notes for every item that changed during the last sync — unchanged notes are skipped, so the update is fast.

Reader / Source Note Toggle Button

Opening the reader and the source note for the same item is now a one-click action. When a Markdown source note is active, a new action button appears in the editor header bar. Clicking it opens (or focuses) the attached PDF/EPUB in the ZotFlow reader. The reverse also works: when the reader is active, the same button jumps to the source note.

Auto-Copy Annotations

Newly created annotations can be copied to the system clipboard automatically. Configure the new Auto-copy on annotation create option in Settings → Citation:

ModeWhat is copied
OffNothing (default)
Embed link![[SourceNote#^annotationKey]]
Highlighted textThe raw highlighted text
CitationFormatted citation using your default citation template

This works for both cloud (Zotero library) and local vault attachments.

Centralized Annotation Sidecar Folder

Local annotation sidecars (.zf.json) can now be stored in a dedicated folder instead of sitting next to each attachment. Set Annotation Sidecar Folder in Settings → General (e.g. .zotflow/sidecars). When set, the original folder hierarchy is mirrored under that folder so sidecar paths remain unambiguous.

Leaving the field empty preserves the existing co-location behaviour.

Library Permissions & Write-Access Gating

A new LibraryService (worker) and LibraryCache (main thread) track per-library capabilities derived from your Zotero API key:

  • hasNotesAccess — whether the key can read/write child notes for that library.
  • canWrite — whether the key has write permission for that library.

These flags are now used to gate UI actions automatically:

  • The note editor and inline editable regions are disabled for libraries where your API key lacks write access.
  • The Sync settings tab displays a read-only badge next to libraries you can't write to.
  • The tree view hides note-editing actions for read-only libraries.

New Command Palette Commands

Five new commands are now available in the Obsidian command palette:

CommandDescription
Open Activity CenterOpen the ZotFlow Activity Center
Sync all librariesTrigger a sync for all configured libraries
Update all library source notesRe-render source notes for all synced items (incremental)
Force update all library source notesRe-render all source notes unconditionally
Extract all annotation imagesBatch-extract annotation images from all synced items

Sync Task Deduplication

If a sync is already running and another sync request arrives (e.g. from a command or the UI), the second request now waits for the running task to finish rather than creating a duplicate. This prevents redundant work during rapid successive triggers.

Hide Editable Region Markers

Source notes contain HTML comment markers (ZF_NOTE_BEG / ZF_NOTE_META / ZF_NOTE_END) that delimit editable regions. A new Hide Editable Region Markers toggle in Settings → General hides these comment tags in the editor while keeping the lock icon and region border fully visible.

Item Type Filtering in Item Picker and Tree View

The item picker modal and tree view services now support filtering items by type. This enables context-specific pickers — for example, commands that only need attachment items will no longer show notes or regular items.


Improvements

HTML ↔ Markdown Conversion

The note editor's conversion pipeline gains two improvements:

  • Task lists[ ] and [x] checkboxes now round-trip correctly between Markdown and Zotero's HTML format.
  • Footnotes — footnote references and definitions survive HTML → Markdown → HTML round-trips.
  • Wikilink escaping[[wikilink]] syntax inside note content is now properly escaped to \[\[wikilink]] when converting to Markdown, preventing accidental Obsidian links.

Markdown Editor Polish

  • Line numbers in the note editor are now hidden when the content does not benefit from them, reducing visual noise.
  • The Zotero reader view's read-only enforcement has been tightened to match the library permission model.

Reader Updated to Zotero 9.0.2

The bundled Zotero reader has been updated to the version shipped with Zotero 9.0.2.


Bug Fixes

  • Auto-update after sync — Fixed a bug where source notes failed to update correctly after the sync task completed.
  • Annotation auto-copy on reader load — Fixed a spurious clipboard write that occurred when the reader initialised and replayed existing annotations, triggering the new auto-copy logic unintentionally.