Loom is a cross-platform Go CLI for UI layout analysis, Pattern catalog
validation, transfer planning, and workflow diagnostics.
What Loom does today
Parse WinUI XAML and normalize it into Loom's shared layout model (inspect:xaml).
Preserve WinUI Grid row/column definitions as layout metadata for transfer planning.
Render parsed layouts as a compact plaintext ASCII tree (inspect:ascii).
Validate and lint the Patterns catalog (patterns:validate, patterns:lint).
Transfer-plan layout compatibility from WinUI to macOS UI patterns (patterns:transfer).
Audit accessibility/layout quality for unsupported boundaries, small targets,
malformed or redundant structures, and scan-friendly risks (accessibility:audit).
Run manifest validation (config:validate / config:schema).
Report errors for source analysis, XAML parsing, manifests, and patterns
(inspect:errors).
Provide curated cross-platform error guidance and suggested fixes (suggestions:os-errors).
Provide CLI self-diagnostics and guard reporting (status, verify,
checks:command-catalog, guards:summary, self-heal:plan).
Write deterministic LF output by default, with --line-ending crlf for Windows
artifacts and --line-ending native for host-native text output.
The following commands are retained in the catalog for parity but are intentionally
not yet implemented in the Go runtime. They return a clear message when invoked:
inspect:source
inspect:parity
graph:components
generate:xaml
generate:swiftui
generate:contracts
project:build
Build and test
make build # installs /opt/homebrew/bin/loom
make test # or: go test ./...