Skip to content

Examples

Complete plans from the repository's examples/ directory, live and editable — edit the source on the left and the SVG on the right recompiles instantly (client-side, deterministic). Hit Open in Playground to keep going with the full editor.

Studio (1BR)

The flagship example, and a tour of v1.3: rooms tagged with uses, a cased opening linking the living space to the hall, real fixture symbols (sink, counter, stove, fridge, shower, basin, WC), and doors whose swings stay clear of the furniture. It is lint-clean under the default profile and import-free. Run arch describe / arch lint on it to see the analysis in action.

SOURCE / .ARCH
Sofa Bed Living / Kitchen 24.0 m² Bedroom 9.0 m² Hall 4.2 m² Bath 4.8 m² 4000 3000 7000 6000 N 02 m PROJECTStudio ApartmentDRAWN BYArchCanvasDATE2026-06-27SCALE1:50
4 rooms · 3 doors · 3 windows · 42 m²

Two-bedroom flat

A larger plan with a central corridor, multiple rooms, and several openings — absolute placement at a real apartment's scale, with north reoriented.

SOURCE / .ARCH
Bed Bed Kitchen / Living 20.0 m² Master Bedroom 30.0 m² Bedroom 2 12.0 m² Bathroom 9.0 m² Hall 9.0 m² 10000 8000 N 02 m PROJECTTwo-Bedroom FlatDRAWN BYArchCanvasDATE2026-06-25SCALE1:100
5 rooms · 3 doors · 4 windows · 80 m²

Parametric

Uses let bindings, a value-function, an array, a scoped set, a for loop, and string interpolation to generate a row of repeated units — showing that scripting expands at compile time into a fixed, deterministic drawing.

SOURCE / .ARCH
Bed Kitchen Bed Kitchen Bed Kitchen Studio A 20.0 m² Studio B 20.0 m² Studio C 20.0 m² 20 m² each 3 units N 02 m SCALE1:100
3 rooms · 3 doors · 3 windows · 60 m²

Themed

A custom theme { … } block with a brick wall material (hatch) — the same geometry, restyled. See theming and materials.

SOURCE / .ARCH
Bed Living 12.0 m² Bedroom 12.0 m² 6000 N 01 m SCALE1:100
2 rooms · 1 doors · 2 windows · 24 m²

Relational

Rooms positioned relative to one another with right-of / below, align, and gap — resolved to absolute coordinates by deterministic arithmetic, not an optimizer (see relational placement).

SOURCE / .ARCH
Bed Living 20.0 m² Kitchen 12.0 m² Bedroom 17.5 m² Bath 10.5 m² 8000 N 02 m PROJECTRelational Layout DemoDRAWN BYArchCanvasDATE2026-06-26SCALE1:100
4 rooms · 1 doors · 1 windows · 60 m²

Attached (placement sugar)

A one-bedroom flat with no hand-computed coordinates for its openings or furniture. It exercises the v1.13 placement sugar together: a strip laying rooms out end to end, doors and windows attached to a wall by position (on <wall> at <pos> — so they can never be reported "off wall"), a door that opens toward a named room (swing into), and furniture anchored inside a room (in <room> anchor … inset …).

SOURCE / .ARCH
Sofa Bed Living 16.0 m² Bedroom 12.0 m² N 02 m
2 rooms · 2 doors · 2 windows · 28 m²

Accessible metadata

accTitle and accDescr supply the SVG <title>/<desc> emitted by arch compile --accessible. They are metadata only — the default output is byte-identical without the flag. Omit them and the description is derived from describe()'s caption instead.

SOURCE / .ARCH
Living 14.0 m² Bedroom 10.0 m² N 01 m
2 rooms · 1 doors · 1 windows · 24 m²