As I’m running out of features to implement on the schemas and processor (which I now need feedback on), I’ve been working on two big companion features.
API
The first is the server API, with this spec outlining expanding its functionality in general, and adding support for a stateful interactive mode optimized for realtime interaction in a word-processor context, that would also be exposed in both the HTTP server and in the WASM binding.
docs/specs/SERVER_INTERACTIVE_API.md
This started with the existing pandoc/citeproc and citeproc-js/citeproc-rs APIs, but then integrated the advanced features in this processor unsupported in the CSL world (annotated bibs, integral/narrative citations, grouping bibliographies by script, etc).
Distributed Styles and Diff-based type-variants
The other, maybe related, feature is distributed style distribution and inheritance.
The latter is described in the style guide.
The CLI TUI now exposes the former:
So what you see is here is from the embedded style registry, which includes a core of “built in” or “embedded” styles included in the processor, and then a list of others that are stored in the repo.
The idea is one could then add additional registries, where a registry is just a simple YAML list of styles and how to access them.
The two together will allow Citum styles to be assembled through distributed pieces, and the processor can handle them as if they were a complete local file.
So think, for example, of a style that references an APA style by URI, and then overrides some its behavior, but is hosted on a journal site with its own dedicated registry.

