Embedding Hyperbole
The standard Hyperbole user interface has purposely been separated from the Hyperbole backend to support the development of alternative interfaces and the embedding of Hyperbole functionality within other system prototypes. The Hyperbole backend functionality that system developers can make use of is called its Application Programming Interface (API). The API may be used to make server-based calls to Hyperbole when Emacs is run as a non-interactive (batch) process, with its input/output streams attached to another process.
The public functions and variables from the following files may be considered the present Hyperbole API:
hact.el, hargs.el, hbmap.el, hbut.el, hhist.el, hmail.el, hmoccur.el, hpath.el, htz.el, hypb.el, hyrolo.el, hyrolo-logic.el, hywconfig.el and set.el.
Note when looking at these files, that they are divided into sections that separate one data abstraction (class) from another. A line of dashes within a class separates public parts of the class from the private parts that follow the line.
This API does not include the Hyperbole Koutliner, as it has been designed for interactive use, rather than programmatic extensibility. You are welcome, however, to study its code, below the hyperbole-${hyperb:version}/kotl/ directory.