Annotator JSON Export saves annotation data as a local archive

Keep saved quotes, comments and tags in a local JSON archive.

MIT · no telemetry · core features free

An annotation export preview shows three checked rows from a research note.
Open larger
version
1.1.0
released
downloads
24
review
Passed
health
Excellent
license
MIT
listed for
Desktop, Mobile
obsidian
1.13.4 or later

Tests used saved note data, an in-memory vault and desktop Obsidian. Mobile devices, hosted imports, video, EPUB, very large archives and live paid sign-in were not tested.

Directory facts fetched from community.obsidian.md/users/theluckystrike.

About Annotator JSON Export

You have saved annotation notes and need a local JSON copy of their remaining quotes, comments and tags.

Your annotation note can hold saved JSON alongside newer comments and tags. Annotator JSON Export combines those saved fields in a preview, then creates a separate archive.

The active note workflow is free and needs no account. It can preserve fields that remain in your note, but it can't recover removed data.

Free features

Read the active annotation note

Run the preview command on a saved Markdown note. You can inspect note, block, valid row and error counts. A note without annotation blocks contributes no rows.

Restore comments, tags, and IDs

A standalone block ID supplies the exported ID. Marked comments and tags replace the saved JSON values; an empty section clears its value. A missing section keeps the saved value.

An expanded annotation row shows its current comment and research tags.
Open larger

Keep quote selectors and other saved fields

Expand a row to inspect saved quote selectors, document fields and vendor fields. Page notes remain without an invented quote. JSON must be an object, and unsupported numeric values produce an error.

Expanded saved JSON includes a Unicode quote and a vendor field.
Open larger

Review errors before creating a file

Clear a row checkbox to exclude it, and acknowledge reported errors before exporting checked valid rows. Cancel creates no file. An existing Export.json gets a numbered alternative such as Export (2).json.

A preview shows one valid row and one invalid JSON block.
Open larger

The active note export is free; folder export, dated archive copies and Markdown error reports require Pro.

Pro features

Pro costs $5 a month or $15 one time through GitHub Sponsors. One sponsorship turns on Pro in every plugin that has it.

Export a selected folder Pro

Select a folder to read its Markdown notes and subfolders into one preview. Rows identify their source notes in the preview. Archive objects receive no extra source path field.

A folder preview shows checked annotation rows from two research notes.
Open larger

Save dated archive copies and an error report Pro

The dated option adds a UTC timestamp to the JSON name and creates a Markdown report of exported rows and parse errors. The report includes local source paths. If its write fails, the saved JSON remains.

A completed export names a dated JSON archive and Markdown error report.
Open larger

Set up Annotator JSON Export

needs

  • Obsidian 1.13.4 or later

steps

  1. Save your annotation note and open it in Obsidian.

  2. Run Preview annotation export from the active note from the command palette.

  3. Inspect the counts, current comments, tags and expanded JSON.

  4. Clear unwanted rows and acknowledge reported errors after reviewing them.

  5. Select Create JSON file and check the new file name and row count.

If the app can't find a new plugin yet, try again later. Obsidian says a plugin that passes the review shows in the app within 24 hours.

How to archive saved Annotator data as local JSON

Known limits of Annotator JSON Export

  • The preview reads saved note data and does not follow later edits; cancel and run the command again after changing the source.
  • Only supported saved annotation blocks and marked sections are read; video and EPUB variants are outside this version.
  • Removed fields cannot be recovered, and the JSON archive does not include surrounding Markdown.
  • JSON arrays, scalar values, unsafe integers and nonfinite numbers produce block errors.
  • The local archive format does not promise hosted service import compatibility.
  • A failed Markdown report write can leave the dated JSON archive saved without its report.
  • Phone and tablet devices, hosted imports, very large archives and live paid GitHub sign-in were not tested.

Need a change for your team? I build custom Obsidian plugins and features.

Questions about Annotator JSON Export

Can this recover annotation fields that disappeared?

It can't recover fields removed before the note was saved. The export keeps remaining JSON fields and restores marked comments, tags and standalone block IDs.

Can I import the archive into a hosted service?

The output is a local archive with a rows array and a total number. Hosted service import compatibility has not been tested or promised.

Does the preview follow edits to my note?

It keeps a snapshot of the saved note read at command time. Cancel and reopen the preview after editing your source.

Do I need Pro for one note?

No account is needed for the active note export. Pro adds folder export and dated archives with reports for $5 a month or $15 once, subject to sponsorship checks.

Network use

After you choose Sign in with GitHub, github.com receives device authorization and token polling requests using the public client ID and read:user scope. Then api.github.com receives an authenticated query for your sponsorship tier and total payments, with no vault data. Successful checks last 7 days, failed checks can retry after 6 hours, and Refresh requests an earlier check.

Read the full network disclosure

Questions or ideas?

Tell me what is broken in Annotator JSON Export, or what it should do next.

Send feedback

Annotator JSON Export 1.1.0, MIT license

MIT · no telemetry · core features free