Project Glossary
Canvus uses a specific vocabulary to describe its architecture and components. This glossary ensures consistent terminology across the codebase, documentation, and team communication.
Core Terms
Workspace
The top-level orchestrating engine that binds interaction handlers, manages node hierarchies, and renders overlays.
Avoid: Sandbox, canvas container
Content Node
A single user-provided HTML element represented in the workspace, decorated with wrappers for styling and tracking.
Avoid: Component, element, block, widget
Projection Mutation Layer
The isolated Shadow DOM where the active HTML is rendered so the browser’s native layout engine handles reflows.
Avoid: Iframe sandbox, render root
Viewport Surface Layer
The transparent HTML5 Canvas overlaid on top of the workspace to draw select outlines, resizing anchors, margins, paddings, and alignment guides.
Avoid: Draw layer, canvas overlay
Flat String Bridge
The serialization mechanism that cleans and extracts the user’s raw HTML, completely stripped of any SDK wrapper elements.
Avoid: HTML exporter, DOM serializer
Interaction Terms
Variant
A specific version of an HTML document in a user experience experiment. The workspace edits only one variant at a time.
Avoid: Cohort, test bucket
Spacing Adjuster
Interactive margin or padding drag handles rendered on the Viewport Surface Layer for mutating layout margins and paddings in real-time.
Avoid: Spacer, drag margin
Operation
A serialized, discrete mutation payload describing a layout change (e.g., style updates, class modifications, tree modifications) generated by visual gestures, designed to be easily committed to, or reversed by, a host’s global transaction lifecycle.
Avoid: Transaction, change event, delta
Editing Terms
Plain-Text Inline Editor
The default, tag-restricted inline text editing mode of the workspace that prevents HTML markup injection.
Avoid: Text input, inline editor
Custom Editor Mount
An escape hatch callback allowing host applications to bypass plain-text editing and mount custom rich-text editors (e.g., TipTap, Quill) directly inside the Workspace.
Avoid: Third-party editor, WYSIWYG connector
Scoped Stylesheet
A <style> block injected directly into the Projection Mutation Layer to apply custom styling without polluting the host editor shell.
Avoid: Global style, global stylesheet
Rules
These terminology rules apply to all code, documentation, comments, and communication:
- Strict Isolation: No SDK styles or wrappers may leak out of the Projection Mutation Layer or remain in the output of the Flat String Bridge
- Single-Document Target: The Workspace operates on a single HTML document at a time. Any switching of Variants is coordinated by the hosting shell
- Granular Synchronization: The Workspace relies on the host application to apply structural document updates using granular mutation APIs rather than reconciling full HTML documents
- Throttled Redraws: Render calls to the Viewport Surface Layer must be throttled using
requestAnimationFrameto prevent unnecessary CPU cycles and layout thrashing