Plugin API changelog

Changes to the Athanor plugin API by version. API version 1 shipped with Athanor 0.3.31 on November 11, 2026, with plugins on for everyone.

How versions work

A plugin's manifest names the API it is written for in api (for example "1.0.0"). Athanor runs plugins whose major number matches its own, and refuses others with "This plugin is written for API x; this Athanor runs API 1." Within a major version, changes only add: new ops, new events, new places to contribute. Nothing a version 1 plugin relies on is taken away while API 1 is current.

API version 1

Athanor 0.3.31, November 11, 2026. Plugins are on for everyone.

For people using plugins

  • The Plugins window, with Discover, Installed and, in developer mode, Development: search, filters by source, category and what a plugin can do, and sorting by Popular, Top rated and Recent.
  • The permission sheet before every install, and a switch per permission afterward.
  • Installs on your arbastro account, so they follow you to other devices.
  • Automatic updates, except updates that ask for more, which wait for your OK.
  • Turning plugins on and off, uninstalling, settings forms drawn by Athanor, star ratings, reviews and reports.
  • Plugins in Ctrl+K (a Plugins tab), in Main menu › Object › Plugins, and in the canvas right-click menu.
  • The Periodic table official plugin.

For developers

  • The sandbox: each plugin in its own QuickJS engine in its own worker; 5 seconds per slice and 64 MB for community plugins.
  • Extension points: commands, panels and plugin windows, exporters, checks and search input sources.
  • Changes: athanor.apply and athanor.propose, with the ops addStructure, addText, setStyle, setName, setAtom, setBond and remove. One change is one undo step; any refused op rolls the whole change back.
  • Reading: athanor.snapshot, athanor.selection and athanor.conformer.
  • Events: documentchange and settingschange.
  • Settings: declared in the manifest, read with athanor.settings.get.
  • Five permissions: document.read, document.edit, network, files.save and user.identity.
  • Developer mode: five New plugin templates (Command, Panel, Exporter, Analysis check, Input source), Import plugin from folder…, Hot reload plugins and the plugin console with a REPL inside the plugin's sandbox.
  • Publishing: the four-step Publish window, automatic screening, human review, review-result emails, and Ed25519 signing of every published version.

Accepted but not active yet

These manifest fields and calls are accepted in API 1 so that plugins can declare them now. They do nothing yet, and an entry here will say when they start working:

  • formats[].import and athanor.formats.onImport
  • checks[].runOn: "demand"
  • inputSources[].kind: "stream"
  • commands[].menu (submenus) and commands[].parameters
  • panels[].defaultDock
  • minAppVersion
  • The files.save and user.identity permissions, which have no call that uses them yet

Is this helpful?

Last updated Nov 11, 2026