@geometra/renderer-canvas
v1.17.0
Published
Canvas2D renderer for Geometra — the singularity frontend framework
Downloads
6,775
Maintainers
Readme
@geometra/renderer-canvas
Canvas2D renderer for Geometra. Renders UI element trees to an HTML <canvas> element with full hit-testing and text selection support.
Install
npm install @geometra/renderer-canvasKey exports
createBrowserCanvasClient— official browser bootstrap for thin-client canvas apps (createClient+CanvasRenderer+ selection + accessibility mirror + focus wiring)CanvasRenderer— renders Geometra element trees to a canvas contextlayoutInspector— optional HUD (frame counter, render ms before HUD, node count, depth, root size, focus + Tab order, optional hit path wheninspectorProbeis set); off by defaultlastRenderWallMs— wall time of the last fullrender()(ms), including overlays; readable for HUDs / metricslastLayoutWallMs— lastcomputeLayouttime (ms) when usingcreateApp(via optionalRenderer.setFrameTimings)inspectorProbe— set{ x, y }in layout coordinates beforerenderto showhitPathAtPointin the HUDenableSelection— text selection on the canvasenableAccessibilityMirror— hidden accessibility DOM mirror from geometry
Usage
import { createBrowserCanvasClient } from '@geometra/renderer-canvas'
const canvas = document.getElementById('app') as HTMLCanvasElement
createBrowserCanvasClient({
canvas,
url: 'ws://localhost:3200',
binaryFraming: true,
autoFocus: true,
rendererOptions: {
background: '#08111f',
},
})If you need lower-level control, the renderer package still exposes CanvasRenderer, enableSelection, and enableAccessibilityMirror directly.
