Status: deferred design. See the linked app reference for current API guidance.

Deferred grid design

7. Deferred

  • Per-column alignment via any cell (SwiftUI gridColumnAlignment): one cell would change the alignment of every cell in its column, an effect at a distance; per-cell .grid_align written in the row covers real layouts.
  • gridCellUnsizedAxes: a third sizing mode whose interaction with flexible columns is subtle; grow_w/grow_h + spans cover the motivating cases.
  • UnitPoint cell anchors, numeric layout priority / weighted distribution, explicit column templates.
  • Baseline alignment between cells. Day does have a baseline concept now (docs/baseline.md) and rows use it, but a grid would have to reconcile one baseline per row across cells that span rows, so grid_row(..).align(VAlign::FirstBaseline) reads as Center for the moment.
  • Lazy/adaptive grid. SwiftUI itself splits eager Grid from LazyVGrid. A future vgrid(grid_items, …) needs viewport-driven realization (the list machinery), a different data flow entirely; nothing in this design blocks it.