gum-property-assignment

Analyze Gum's runtime instantiation pipeline from ElementSave to GraphicalUiElement.

597|79|Updated Mar 11, 2015
One-click install
npx skills add https://github.com/vchelaru/Gum --skill gum-property-assignment
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gum-property-assignment
Source: https://github.com/vchelaru/Gum/tree/main/.claude/skills/gum-property-assignment
Command: npx skills add https://github.com/vchelaru/Gum --skill gum-property-assignment

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill provides a reference guide to how Gum instantiates runtime objects from save data and applies variables to renderables, helping developers understand the end-to-end workflow and improve debugging.

Core Features & Use Cases

  • End-to-end mapping: ElementSave to GraphicalUiElement with proper state and variable propagation.
  • Variable binding and state application: apply default states and exposed variables to renderables.
  • Child creation and render pipeline: recursively instantiate child elements and wire parent-child relationships.
  • Font loading and deferred updates: explain font deferral mechanics and how font states are resolved during layout.

Quick Start

Explain how Gum loads a GraphicalUiElement from ElementSave and applies default states.

Frequently Asked Questions about gum-property-assignment

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How does Gum convert ElementSave data into a live GraphicalUiElement tree?

Gum's runtime instantiation uses the ToGraphicalUiElement → SetGraphicalUiElement flow to convert ElementSave data into a live GraphicalUiElement tree, applying states and recursively creating child elements.

How do I apply default states and exposed variables to Gum renderables?

You apply default states and exposed variables to Gum renderables using the variable binding mechanism, which propagates state data through CustomSetPropertyOnRenderable during the instantiation pipeline.

Why are my Gum font states not loading correctly during screen layout?

Gum font states may not load correctly due to font deferral mechanics, where UpdateFontRecursive and related deferred update logic resolve font loading asynchronously during the layout phase rather than immediately at instantiation.

How does Gum handle parent-child relationships when recursively instantiating UI elements?

Gum handles parent-child relationships by recursively instantiating child elements during the SetGraphicalUiElement flow, wiring the hierarchical tree structure while propagating states and variables down to each renderable.

What is the role of CustomSetPropertyOnRenderable in Gum's variable binding pipeline?

CustomSetPropertyOnRenderable acts as the binding mechanism within Gum's variable binding pipeline, applying exposed variables and state data directly onto renderable objects during the GraphicalUiElement instantiation process.

Can I debug Gum runtime instantiation by tracing the ElementSave to GraphicalUiElement mapping?

You can debug Gum runtime instantiation by tracing the end-to-end mapping from ElementSave to GraphicalUiElement, inspecting state application, variable propagation, and deferred font updates to identify binding or rendering issues.