Selector-driven projection from a tree to a value space, with cascade resolution when multiple selectors match the same node.
A general-purpose .NET engine that subsumes:
- CSS-style styling of arbitrary object trees
- IE5-HTC-style behavior attachment
- JSONPath-driven routing over reducer state
- Schema-rule systems
- Vim-style keymap binding to nodes by predicate
The core knows nothing about styling, rendering, or HTML. It knows about trees, selectors, matches, cascade, and projection.
Pre-alpha. Phase 3 shipped — CSS subset selectors, cascade with specificity/inheritance/hot-reload,
the built-in styling property set, and a Spectre.Console projection, AOT-verified end-to-end.
Layout (Yoga), interactions, JSONPath, and the Terminal.Gui projection are still ahead. See
docs/04-plan.md for the roadmap.
Packages publish to NuGet under the StandardBeagle.Strata.* prefix as prereleases:
dotnet add package StandardBeagle.Strata.Core --prerelease
dotnet add package StandardBeagle.Strata.Css --prerelease
dotnet add package StandardBeagle.Strata.Properties.Styling --prerelease
dotnet add package StandardBeagle.Strata.Render.Spectre --prerelease
# adapters
dotnet add package StandardBeagle.Strata.Adapters.JsonNode --prerelease
dotnet add package StandardBeagle.Strata.Adapters.PSObject --prerelease(The C# namespaces remain Strata.*; only the package IDs carry the StandardBeagle. prefix.)
- Requirements
- Specification
- Technical design
- Plan
- Interaction redesign — supersedes the Phase 5/6 behavior model
.NET 10.0+ (Native AOT compatible).
MIT