> ## Documentation Index
> Fetch the complete documentation index at: https://docs.loft.build/llms.txt
> Use this file to discover all available pages before exploring further.

# chained-perimeter

The `chained-perimeter` example as shipped in [`examples/chained-perimeter/`](https://github.com/loftlang/loft/tree/main/examples/chained-perimeter) — 2 files, one project. Every file compiles in CI; a folder here navigates, never scopes.

## `model.loft`

```loft theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/loft.json","/languages/loft-fragment.json"]}}
# Chained perimeter — v0.2 session 1 (element datum accessors)
# Every corner is stated ONCE, where the sharing happens; the chain is
# the anchor graph, and editing W1 moves its dependents.

project "Chained Perimeter"
units imperial

level L1 elev 0' height 10'-0"

grid A vertical at 0'
grid B vertical at 30'-0"
grid 1 horizontal at 0'
grid 2 horizontal at 22'-0"

walltype EXT-1 layers [brick 4", air 1", core: stud 6", gyp 5/8"]
walltype INT-1 width 4-1/2"

doortype 3070 width 3'-0" height 7'-0"
windowtype W-5040 width 5'-0" height 4'-0"

# the perimeter chains through line-datum anchors
wall EXT-1 W1 from (grid.A,grid.1) to (grid.B,grid.1) justify left
wall EXT-1 W2 from wall.W1.end to (grid.B,grid.2) justify left
wall EXT-1 W3 from wall.W2.end to (grid.A,grid.2) justify left
wall EXT-1 W4 from wall.W3.end to wall.W1.start justify left

# the partition rides a carrier (12' right of grid A, in its own 1-to-2
# travel) and tops out with the perimeter (vertical datum anchor)
wall INT-1 W5 from grid.1 to grid.2 at 12' right of grid.A top wall.W1.top

# selector families: hinge follows the swing; jamb follows the tape
door 3070 D1 in wall.W1 at 4'-0" swing left
door 3070 D2 in wall.W1 at 6' past door.D1.jamb
window W-5040 WIN1 in wall.W3 at 8' sill 3'-0"

room 101 name "OFFICE" at (15', 11')
```

## `views/L1-plan.loft`

```loft theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/loft.json","/languages/loft-fragment.json"]}}
# A view owns its file — this page is the plan, a declared query over the
# model. Its facts are its own: scale and cut plane, written on the view.
view plan L1-plan of level.L1 scale 1/4" cut 4'-0" name "Level 1 Floor Plan"
```
