Core Concepts
Recall is built around a small set of runtime concepts. These concepts give the core app and plugins a shared language for adding behavior without tightly coupling every feature to every screen.
This page is a quick map of the concepts documented in this section.
Concept map
Section titled “Concept map”- Pages are user-facing screens owned by the host app.
- Regions are fixed named areas inside a page, such as top, main, or bottom.
- Blocks are ordered pieces of UI rendered inside a region.
- Commands are named actions that can be triggered from UI, menus, sheets, plugins, or shortcuts.
- Sheets are registered bottom-sheet surfaces that can be opened through commands.
- Menus are data-only action lists whose items point to commands.
- Dialogs are host-rendered alerts and confirmations that wait for a user’s response before a flow continues.
- Toasts are temporary, non-blocking feedback for results and status that do not require a response.
- Sorting methods contribute reusable ordering strategies for compatible app surfaces.
- Highlight colors contribute named colors that the host can use for lightweight visual markers.
- App info is read-only host metadata such as the app name, version, and release channel.
- Plugin lifecycle defines how JavaScript plugins initialize and clean up, and how static theme entries are loaded.
- Runtime context is the shared object that exposes app capabilities such as commands, sheets, menus, app state, dialogs, and toasts according to the plugin’s permissions.
- Plugins extend Recall through stable runtime contracts instead of private app internals.
Start here
Section titled “Start here”Start with Plugin Lifecycle to learn how a plugin is loaded and cleaned up. Then read Commands to understand how runtime actions are registered and reused.