AlisReactive 1.0.0-preview.22
dotnet add package AlisReactive --version 1.0.0-preview.22
NuGet\Install-Package AlisReactive -Version 1.0.0-preview.22
<PackageReference Include="AlisReactive" Version="1.0.0-preview.22" />
<PackageVersion Include="AlisReactive" Version="1.0.0-preview.22" />
<PackageReference Include="AlisReactive" />
paket add AlisReactive --version 1.0.0-preview.22
#r "nuget: AlisReactive, 1.0.0-preview.22"
#:package AlisReactive@1.0.0-preview.22
#addin nuget:?package=AlisReactive&version=1.0.0-preview.22&prerelease
#tool nuget:?package=AlisReactive&version=1.0.0-preview.22&prerelease
Alis.Reactive
Plan-driven reactive framework for ASP.NET MVC. C# fluent builders produce JSON plans executed by a browser runtime. Zero JavaScript in views.
Packages
| Package | Description |
|---|---|
Alis.Reactive |
Core plan model, builders, and serialization |
Alis.Reactive.Native |
Native HTML components (TextBox, CheckBox, DropDown, Button, etc.) |
Alis.Reactive.Fusion |
Syncfusion EJ2 component integration |
Alis.Reactive.FluentValidator |
FluentValidation rule extraction to client-side validation |
Alis.Reactive.NativeTagHelpers |
ASP.NET Core Tag Helpers for native components |
All library packages target net48 and net10.0 (NativeTagHelpers is net10.0 only).
Getting Started
Prerequisites: .NET SDK 10.0.x and Node.js 22+.
A fresh clone has no installed dependencies and no built bundles. Run these three commands from the repo root, in order:
npm ci # 1. install JS dependencies
npm run build:all # 2. build the JS/CSS bundles
dotnet run --project Alis.Reactive.SandboxApp # 3. start the sandbox
Open http://localhost:5220 — the sandbox home page is the index of component demos.
Order matters: the sandbox serves the bundles produced by build:all and
refuses to start without them. If you skip step 2, startup throws with a
message telling you to run npm run build:all.
Developing
Three terminals give a live edit/refresh loop:
npm run watch # framework JS — rebuild on .ts edit
npm run watch:css # framework CSS — rebuild on .css edit
dotnet watch --project Alis.Reactive.SandboxApp # Razor + C# hot reload
- Edit
.ts/.cssunderAlis.Reactive.Assets/→ save → browser refresh. No restart. - Edit
.cshtml/.cs→dotnet watchhot-reloads automatically.
The full command reference — every build, test, and pack command — lives in CLAUDE.md → Build & Run, the canonical guide.
How the bundles ship
npm run build:all produces JS/CSS bundles that three places consume. Every
bundle output path is gitignored — git status stays clean after a build.
| Consumer | How it gets the bundles |
|---|---|
| Sandbox | SandboxApp/Program.cs serves Alis.Reactive.Assets/dist/ directly via a CompositeFileProvider — no copy into wwwroot/ |
| NuGet | Alis.Reactive.csproj packs the core dist/ bundles into AlisReactive; Alis.Reactive.Fusion.csproj packs syncfusion.dev.css into AlisReactive.Fusion. dotnet pack never runs npm |
Example app (examples/resident-intake/) |
Consumes the published NuGet; AlisReactive.targets copies the bundles into wwwroot/ on build |
Repo Layout
Alis.Reactive/ C# core library (packed as AlisReactive NuGet)
Alis.Reactive.Native/ C# native-component library
Alis.Reactive.Fusion/ C# Syncfusion-component library
Alis.Reactive.FluentValidator/ C# validator-extraction library
Alis.Reactive.NativeTagHelpers/ C# tag helpers (net10 only)
Alis.Reactive.Analyzers/ Roslyn analyzers (shipped with AlisReactive)
Alis.Reactive.Assets/ Framework JS + CSS source — pure npm package, no csproj
Alis.Reactive.SandboxApp/ Dev harness + live component demos
examples/resident-intake/ Published-NuGet consumer example
tests/ Test projects (NUnit + vitest + Playwright)
The framework's JS runtime lives in Alis.Reactive.Assets/ — a sibling folder
with its own package.json, no csproj, no MSBuild orchestration of npm. This
mirrors how dotnet/aspnetcore ships Blazor's Web.JS and SignalR's
TypeScript client.
License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- System.Text.Json (>= 9.0.16)
-
net10.0
- No dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on AlisReactive:
| Package | Downloads |
|---|---|
|
AlisReactive.Fusion
Syncfusion EJ2 component integration for Alis.Reactive — rich UI components through the reactive plan DSL. |
|
|
AlisReactive.Native
Native HTML components for Alis.Reactive — textboxes, checkboxes, dropdowns, and more with zero vendor dependencies. |
|
|
AlisReactive.NativeTagHelpers
ASP.NET Core Tag Helpers for Alis.Reactive native components — declarative HTML authoring with reactive plan integration. |
|
|
AlisReactive.FluentValidator
FluentValidation integration for Alis.Reactive — server-side rules that automatically extract to client-side validation. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-preview.22 | 63 | 5/15/2026 |
| 1.0.0-preview.21 | 93 | 4/28/2026 |
| 1.0.0-preview.20 | 67 | 4/22/2026 |
| 1.0.0-preview.19 | 61 | 4/21/2026 |
| 1.0.0-preview.18 | 72 | 4/16/2026 |
| 1.0.0-preview.17 | 63 | 4/15/2026 |
| 1.0.0-preview.16 | 63 | 4/14/2026 |
| 1.0.0-preview.15 | 65 | 4/13/2026 |
| 1.0.0-preview.14 | 65 | 4/13/2026 |
| 1.0.0-preview.13 | 59 | 4/12/2026 |
| 1.0.0-preview.11 | 65 | 4/12/2026 |
| 1.0.0-preview.8 | 62 | 4/12/2026 |
| 1.0.0-preview.7 | 59 | 4/12/2026 |
| 1.0.0-preview.6 | 63 | 4/12/2026 |
| 1.0.0-preview.2 | 117 | 4/9/2026 |
| 1.0.0-preview.1 | 71 | 4/9/2026 |