---
title: "Glossary"
description: "Terms used across the documentation: editor composition, document, block, source, AI and panel vocabulary."
canonical_url: "https://skaile-ai.github.io/forge-editor/getting-started/glossary"
---
# Glossary

> Terms used across the documentation: editor composition, document, block, source, AI and panel vocabulary.

These terms name the concepts used in the documentation. `_Avoid_` lists words that mean something else here.

> **Migration note.** The documentation, the library and its English labels use this vocabulary. Persisted data written under older names loads through a migration and is never written back under them (see the Persisted names section of the migration guide). The `::: <Block type id>` fences did not change.

## Editor composition

**Feature**:<br />


A named contribution to an editor (blocks, toolbar entries, menus, settings, AI knowledge) that a Preset lists.<br />

*Avoid*: plugin, extension (an extension is a TipTap building block a Feature may contribute)

**Integration**:<br />


A Feature that exists only to connect two or more other Features (e.g. Typed blocks with AI, transcripts with AI).<br />

*Avoid*: bridge, glue feature

**Preset**:<br />


A validated, ordered list of Features that defines one kind of editor. Say Editor preset where a Model preset could be meant.<br />

*Avoid*: config, editor definition

**Surface**:<br />


The framework-specific place (Vue or React) where a Preset is mounted and edited.<br />

*Avoid*: editor component, view

**Surface session**:<br />


One mount of a Preset on a Surface, from mount to unmount; Feature setups are active exactly while it lives.<br />

*Avoid*: editor instance, mount

**UI binding**:<br />


The set of framework components a Feature needs on one Surface (overlays, settings tabs, node views).<br />

*Avoid*: adapter layer, renderer set

**Editor library**:<br />


The `@skaile/forge-editor` package: Features, Presets, Surfaces and the server ports, usable by any host.<br />

*Avoid*: the editor (ambiguous with a Surface), core

**Reference app**:<br />


The Nuxt app in this repo that hosts the Editor library and shows one complete setup.<br />

*Avoid*: the app, demo

**Host**:<br />


The application that mounts a Preset and supplies backend, UI kit, Block types and Host blocks.<br />

*Avoid*: client, consumer

## Document

**Document**:<br />


The stored, editable unit a user opens, names and moves; it holds Blocks but is not itself a Block.<br />

*Avoid*: page, file

**Block**:<br />


An independently addressable unit of a Document's content. A Block is either a Simple block or a Container block.<br />

*Avoid*: node (code name only), Baustein (legacy UI label for Typed block)

**Simple block**:<br />


A Block that holds no other Blocks, such as a paragraph, heading, list, quote, code block or media. The items of a list are part of the list, not Blocks of their own; block actions and drag act on the list. Simple is a classification of structure, not a Block type.<br />

*Avoid*: leaf, text block, hierarchical block (retired)

**Container block**:<br />


A Block that can hold other Blocks, each addressable, movable and convertible on its own. A Container block with no children yet stays a Container block. Container is a classification of structure, not a Block type; it maps to the container capability (`editorBlockContainer`).<br />

*Avoid*: group, wrapper, hierarchical block (retired)

**Typed block**:<br />


A Container block with a Block type: a title, description and tags followed by a body, with the properties and capabilities its Block type defines.<br />

*Avoid*: composite block (code name `composite`), Baustein (legacy UI label), section, card

**Host block**:<br />


A Block contributed by the Host rather than by the Editor library.<br />

*Avoid*: custom node

**Block type**:<br />


The domain type of a Typed block (e.g. Folder, Document, Task, Note, Recording, Rendition): its exact kind. It defines the block's Property definitions, its Accepted children, its Source media types and its AI brief; it is not a structural classification such as simple or container.<br />

*Avoid*: Baustein kind (legacy UI label), composite kind, node type, block feature (Feature is a composition term)

**Block capabilities**:<br />


What a Block supports: being a container, holding Source media, holding Derived blocks, holding Block references, carrying a Bibliographic record, carrying typed properties. The Block's structural role sets the base; its Block type adds or narrows capabilities. A capability is support, not content: a block that may hold a source need not hold one. Comments are not a capability: they attach to text, not to a Block.<br />

*Avoid*: block features, abilities

**Block actions**:<br />


The operations a user can run on one Block: standard actions every Block has (duplicate, delete, move, convert), actions a capability brings (transcribe a Source, derive a Rendition, cite a Bibliographic record) and actions a Block type brings (fill with AI). An action is offered only where the Block has the capabilities it needs and its place in the Document has the Ability it needs; one Ability can gate many actions.<br />

*Avoid*: commands (code name for the keyboard-level API), block menu (the rendering)

**Ability**:<br />


What may be done at one place in a Document, decided by the Blocks around it: each Block grants or revokes abilities for what it holds (no headings inside a code block, no text editing inside media), and the Host sets the starting set for a Surface session. Abilities gate what the editor offers there: toolbar and `/` entries, shortcuts and Markdown shortcuts, suggestions, AI help and Block actions. They decide what is offered, not what may be written: pasted, dropped and collaborators' edits are not checked, and they know nothing of users beyond the starting set the Host chooses. A capability says what a Block is, an Ability what may be done at a place, an action what the user runs.<br />

*Avoid*: permission, right, role, capability

**Block properties**:<br />


The values that describe a Block, e.g. title, status or language. A property is a concrete value, not the definition of what may be set.<br />

*Avoid*: attributes, metadata, fields

**Property definition**:<br />


The declaration of one property a Block may carry: key, label and value type (text, date, select, reference, bibliography, ...). One mechanism for every Block; Block types declare them, and today only Typed blocks store property values.<br />

*Avoid*: meta field, schema field

**Block contents**:<br />


The items a Block actually holds: nested Blocks and, where its capabilities allow, Source media, Derived blocks and references. Contents are what is present; capabilities are what is supported.<br />

*Avoid*: children (alone), payload

**Accepted children**:<br />


The Block types a Block type lets you nest inside it: a list of types, or all. The rule covers only Typed blocks inside Typed blocks, not paragraphs, lists or other Blocks. Without a setting, Folder and Document accept all and every other type accepts none. The Document tree and the editor apply the same rule to new moves; existing nesting is left alone.<br />

*Avoid*: allowed content, drop targets

**Document block type**:<br />


The built-in Block type, Document, for a document-like unit inside a structure of Typed blocks, such as an imported file; it is not the Document itself. It is an ordinary Block type: what it accepts, whether it can be exported and which imported files become one are settings of its capabilities, never a rule on its name.<br />

*Avoid*: document (alone, for the type)

**Structure mode**:<br />


The user's choice of how Documents are structured: Structure mode nests Typed blocks, Flat mode uses Markdown headings.<br />

*Avoid*: composite mode, heading mode

## Sources, derivation and references

**Source media**:<br />


The original image, audio, video or file kept as a media Block inside the Block that holds it.<br />

*Avoid*: attachment, asset, source (alone, when the holding block is meant)

**Source**:<br />


The capability of holding Source media. A Block type declares which media types its Source may be.<br />

*Avoid*: source block, source-bearing block, recording block (that is one Block type with the Source capability)

**Derivation**:<br />


The record a Derived block keeps of where it came from: the original Block, the method (transcription, OCR, AI description, ...), the model and the time. The link to the original stays with the Derived block; the original can list its Derived blocks.<br />

*Avoid*: provenance (the UI label), lineage, history

**Derived block**:<br />


A Block that carries a Derivation, whatever its Block type.<br />

*Avoid*: rendition (that is one Block type), child, copy

**Rendition**:<br />


The Block type for a readable version of a Source: transcript, full text or description. Shown as Readable rendition in the UI.<br />

*Avoid*: Lesefassung (legacy UI label), transcript (that is one method)

**Block reference**:<br />


A property value that points to another Block by its block ID; a Property definition may limit the target Block types.<br />

*Avoid*: link, pointer, relation

**Bibliographic record**:<br />


A CSL-JSON description of a publication that a Block carries; the Block's ID and title are not part of it.<br />

*Avoid*: citation, bib, metadata

**Basket**:<br />


One named colour group, defined by the Host, that a Typed block can be put into; not a saved filter.<br />

*Avoid*: Korb (legacy UI label), colour label, tag

## AI

**Model preset**:<br />


A server-defined endpoint and model configuration, identified by preset ID; its key stays on the server.<br />

*Avoid*: preset (alone, that is an Editor preset), server preset

**Model profile**:<br />


The client-visible model record (ID, label, endpoint, model) that comes from a Model preset or from the user; it never carries a key.<br />

*Avoid*: model config, connection

**Model reference**:<br />


The selector sent with an AI request: a Model preset ID, or an endpoint with model and its own key.<br />

*Avoid*: ref, model id

**Model role**:<br />


The category of AI work (complete, rewrite, generate) that settings assign a Model profile to.<br />

*Avoid*: slot (code name), task type

**AI brief**:<br />


What a Block type tells the model: its purpose, instructions and the AI content template.<br />

*Avoid*: prompt, kind ai

**AI content template**:<br />


The Markdown target text with placeholders that a Block type supplies when AI fills a Typed block of that type.<br />

*Avoid*: skeleton (code name), Vorlage (legacy UI label)

**Proposed change**:<br />


One change the model proposes to a Document (replace, blocks, insert or delete); it can contain several Review hunks.<br />

*Avoid*: edit, operation, diff

**Review hunk**:<br />


One reviewable difference of a Proposed change that the user accepts or rejects.<br />

*Avoid*: chunk, suggestion

**Review**:<br />


One round of deciding the Review hunks of a set of Proposed changes; it ends once every hunk is decided.<br />

*Avoid*: AI review (unless contrasted with a human review), approval

## Panels and menus

**Block inspector**:<br />


The panel that shows either the Document facts or the Typed block under the caret, and edits its summary, properties and tags.<br />

*Avoid*: details panel, settings panel

**Document facts**:<br />


The Document section of the Block inspector: the Document's own title, properties and tags.<br />

*Avoid*: document settings, document meta

**Selection menu**:<br />


The AI menu that runs a task on the selected text or at the caret and lets the user apply or discard the result. Labelled AI selection menu in the UI.<br />

*Avoid*: bubble menu (the rendering), AI popup

**Document tree**:<br />


The navigation panel listing folders, Documents and each Document's Typed blocks; it moves, renames and reveals them, filters by type and title, and shows why a drop is refused.<br />

*Avoid*: sidebar, file browser, outline (the Block outline is the part for one Document)

**Block outline**:<br />


The per-Document part of the Document tree: the hierarchy of a Document's Typed blocks, not every paragraph.<br />

*Avoid*: outline (alone), table of contents

**Comments margin**:<br />


The column beside the editor that shows each comment thread next to the text it comments on; the active thread sits exactly at its text and the other threads move out of its way. Resolved threads stay hidden until the user shows them.<br />

*Avoid*: comment sidebar, gutter

**Orphaned thread**:<br />


A comment thread whose commented text was deleted; the margin shows it greyed out at the place where the text was. When undo brings the text back, the thread is attached to it again.<br />

*Avoid*: dangling comment, lost comment

## Collaboration and appearance

**Author identity**:<br />


The writing user's ID, name and colour, used for remote carets, author marks and comments.<br />

*Avoid*: user, account

**Collaboration session**:<br />


The live connection of one Surface session to a Document's shared state.<br />

*Avoid*: room, socket

**Theme**:<br />


The appearance a user picks for the editor; Default appearance is the choice that applies no Theme.<br />

*Avoid*: Darstellung (legacy UI label), skin, style

**Design tokens**:<br />


The named CSS variables (`--sk-*`) the Editor library styles with; the Theme bridge maps them to the Host's UI variables.<br />

*Avoid*: CSS vars, palette

**UI kit**:<br />


The set of widgets (buttons, inputs, overlays) a Host supplies to the Editor library's chrome.<br />

*Avoid*: component library, design system


## Sitemap

See the full [sitemap](https://skaile-ai.github.io/forge-editor/sitemap.md) for all pages.
