NE.Standard

Packages

One repository, one version: a release covers every package at once, and they are only ever installed at matching versions — this is a pre-release, so --prerelease is needed until the first stable release.

Start here

An application that renders to the web needs the host and the renderers; everything else arrives as a dependency.

dotnet add package NE.Standard.UI.Web --prerelease
dotnet add package NE.Standard.UI.Web.Renderers --prerelease

The UI framework

Package What it carries
NE.Standard.UI.Primitives The bottom layer: enums, attributes and value types — UIThickness, UIResponsive<T>, the styling and binding vocabulary. No dependencies.
NE.Standard.UI.Abstractions The binding and addressing model, RecursiveObservable, the items and interaction contracts, the ClientEffect vocabulary.
NE.Standard.UI.Authoring What an application author writes against: the component, view and controller base contracts.
NE.Standard.UI.Compiled The compiler's output: CompiledView, its indexes and the resolution over them.
NE.Standard.UI.Shell Hosting and runtime contracts: IUIHost, IUIRuntime, IUIUpdateSink, sessions, services.
NE.Standard.UI The engine: view compilation, the two-way runtime, hosting, routing, scheduling.
NE.Standard.UI.Components.Foundation The authoring foundation: the component bases (VisualComponentBase, TemplatedComponentBase, RowItemsComponentBase, the input bases), the template bindings and the input extension methods a package's own component builds on — none of the built-ins.
NE.Standard.UI.Components The built-in components and their default templates, over the foundation.
NE.Standard.UI.Generators The two Roslyn source generators the stack is built on, usable by anything defining its own components or observable models.

The web platform

Package What it carries
NE.Standard.UI.Web The ASP.NET Core host: shell, SignalR channel, file transfer, and the embedded TypeScript client.
NE.Standard.UI.Web.Abstractions The render contracts an add-on implements to render a component of its own.
NE.Standard.UI.Web.Renderers.Foundation The renderer base (WebComponentRendererBase) and the shared style, text and input helpers an add-on's own renderer builds on.
NE.Standard.UI.Web.Renderers The HTML renderers for the built-in components, over the foundation.

Add-ons

Icons ship separately, from their own repository (AkiEvansDev/NE.Standard.UI.Icons), on their own version — developed alongside the framework so a set and the renderer it plugs into are never out of step. One set is two packages: the names, platform-independent, and the rendering for a platform.

Package What it carries
NE.Standard.UI.Icons.Lucide / NE.Standard.UI.Web.Icons.Lucide Lucide: 1 715 line glyphs, 2 px on a 24 grid.
NE.Standard.UI.Icons.Material / NE.Standard.UI.Web.Icons.Material Material Symbols: 3 899 rounded glyphs, filled and outlined.
NE.Standard.UI.CodeInput / NE.Standard.UI.Web.CodeInput A code editor field: syntax highlighting for JSON, CSS and LESS, JavaScript and TypeScript, HTML, Bash, C# and Python, line numbers, and find and replace in the browser. Its own repository (AkiEvansDev/NE.Standard.UI.CodeInput) and version, under the framework's licence.
NE.Standard.UI.Extensions Presets over the components: a text in a role (UIText), a page's regions (UIPage), the arrangements (UILayout), buttons and their rows (UIButtons), a form's pieces (UIForm, UIDetails), and ShownWhen/HiddenWhen/EnabledWhen — one call each, nothing the client has to know about.

Neither icon set ships a stylesheet — the whole of Lucide is 700 KB of CSS and the whole of Material three megabytes, while an application draws tens of glyphs — so the glyph table ships deflated in the assembly and the web package builds a stylesheet at startup from what the application registers.

Both icon packages are MIT: a table of names and a stylesheet carries no reason to require a licence anyone has to read. Being MIT does not make the framework MIT — the icons are only useful inside it, and using them commercially still means licensing the framework itself.

From elsewhere

Package What it carries
NE.Colors The colour palette, a repository of its own because more than this framework needs it. MIT, netstandard2.1, no dependencies. Arrives as a dependency of NE.Standard.UI.Abstractions.
NE.Common General-purpose .NET helpers. MIT, its own repository, and not a dependency of anything here — it used to ship from this repository under the name NE.Standard and moved out because nothing in the framework used it.

Licence

The framework itself — core, everything above except the add-ons and the packages from elsewhere — is under the Prosperity Public License 3.0.0: free for noncommercial use, with a thirty-day trial for commercial use. Personal projects, research, education, charities and public institutions are not commercial use. See LICENSE.md.