Glossary
ECHO terms, such as space and object, are in ECHO’s glossary. Identity and invitation terms are in HALO’s glossary.
Action
Section titled “Action”A node in App Graph that stands for something a person can do to another node. Its data is a function that returns an Effect. The action’s disposition says where it appears, such as an object’s toolbar or its context menu. See App Graph.
Activation event
Section titled “Activation event”An event that tells the plugin manager when to load a module, such as startup or the first time a view is needed. See ActivationEvent.
Annotation
Section titled “Annotation”Metadata on an ECHO schema that tells the app how to present its objects, such as which property is the label, the type’s icon, or whether people create it themselves. See Using ECHO in a plugin.
App Graph
Section titled “App Graph”The graph of everything a person can open or do in an app, made of nodes and actions. In Composer the navigation tree, toolbars, context menus and command palette all read it. See App Graph.
App Toolkit
Section titled “App Toolkit”@dxos/app-toolkit, the package that adds what a workspace app needs on top of the framework: the
App Graph, layout, settings and the standard roles. See
App capabilities.
Builder extension
Section titled “Builder extension”A matcher and a connector that add nodes to App Graph. The matcher picks the nodes it applies to, and the connector returns the nodes to connect to them. See App Graph.
Capability
Section titled “Capability”A typed slot that modules contribute values to and other modules read. Plugins extend each other through capabilities instead of imports. See Capability.
Filter
Section titled “Filter”The part of a surface contribution that names the roles it serves and a guard on the data, such as “the article role, when the subject is a Note”. See Surfaces.
Handler
Section titled “Handler”An Effect that takes an operation’s input and returns its output. Plugins contribute handlers in a handler set, separately from the operation’s definition. See Operation.
Module
Section titled “Module”A part of a plugin that loads on an activation event and contributes capabilities. See Plugin.
An item in App Graph, with an id, a type, data and properties. Its data is usually what it stands for, such as a space or an ECHO object. Each node has a path of ids from the root, and in Composer the URL is a node path.
Operation
Section titled “Operation”A named action with a typed input and output, defined once and run by buttons, the command palette and agents alike. See Operations.
Operation invoker
Section titled “Operation invoker”The part of the framework that runs an operation: it looks up the handler by the operation’s key, validates the input and output, and runs the handler.
Plugin
Section titled “Plugin”Metadata and the modules a plugin is made of. A plugin does nothing by itself; its modules contribute everything it adds to the app. See Plugin.
Plugin manager
Section titled “Plugin manager”The part of the framework that loads plugins, fires activation events and activates the modules waiting on them.
A named place in an app’s UI, such as Article for the main content area or Section for an object inside a stack.
Each role declares the data it passes to a surface. See Surfaces.
Schema registration
Section titled “Schema registration”A plugin’s contribution to the Schema capability, which lists the ECHO types it defines. The app can name, list and
create only objects of registered types. See Using ECHO in a plugin.
Surface
Section titled “Surface”A named place in the UI that plugins fill with components. A surface contribution is a component and a filter; the host asks for a role and renders the contributions that match. See Surfaces.