Fabled
Docs
Frames

Frames

更新日 2026/05/30

3 分で読める

更新済み 2026/05/30

A frame is a layout. It decides how an element shows up on screen. A character sheet is a frame. A token on the map is a frame. A printable party handout is a frame. The same element drives all of them; only the visual arrangement differs.

Frames are a separate layer from frameworks and elements for a reason. The rules can change without redrawing every sheet, the sheets can change without re-stating the rules, and the same element can show up in three different places at once without anyone keeping the layouts in sync by hand.

The Forge landing in Fabled, where frames live alongside frameworks and elements.
Frames live in The Forge next to frameworks and elements. Each frame is one layout that can render any element on a matching framework.

Binding expressions

Inside a frame, you place a text field and tell it which element value to read. The placeholder text uses the binding-expression syntax:

binding examples
{{element.name}}
{{element.attributes.strength.modifier}}
{{element.hp.current}} / {{element.hp.max}}
{{element.spells.prepared.length}}

When the frame renders, the engine swaps each expression for the matching value on the element being shown. Edit the value (a level-up, a damage roll, a spell prepared), and every frame currently displaying that element updates together.

Bindings can also drive visibility. A row that reads show when {{element.level}} >= 3 hides itself for low-level characters and appears the moment they hit the threshold. Visibility expressions evaluate against the same element values the text bindings read.

The visual frame editor in The Forge, with a layout open and binding expressions visible.
The frame editor is a visual layout tool. Drag components onto the canvas and bind their values with expressions.

Many frames per element

One element commonly has several frames live at once. A 5e character might have:

  • A full sheet frame for the player to read, with every stat, skill, spell, and inventory slot.
  • A sidebar mini-frame for the live session, showing only HP, AC, and the next planned action.
  • A token frame for the map, showing only portrait, name, and current HP bar.
  • A printable handout frame for the table to print before a one-shot.

All four pull from the same underlying element. A damage roll on the token updates the sidebar mini-frame and the full sheet at the same time, with no copying.

Character cards rendered on the Fabled characters page.
Frames in action: the cards on the Characters page are the sidebar-card frame painting each character element.

What does NOT belong in a frame

Frames are pure display. They have no game-rule logic of their own. If you find yourself wanting to compute a value inside a frame (the AC, the attack bonus, the modified save DC), the answer is to compute it in the framework and have the frame display the result.

This split is exactly the rule-vs-display separation introduced in Frameworks. Putting a calculation in a frame means the same calculation gets re-implemented on every other frame for the same element, and they drift the moment one of them changes.

Where to go from here

  • If you have not read Frameworks and Elements yet, read those first. The split between the three layers is the load-bearing idea.
  • When you are ready to edit a frame yourself, the Customise a frame how-to walks through the visual editor end-to-end.
  • For how all three layers compose into a working game, read Compose.