-
Notifications
You must be signed in to change notification settings - Fork 1
GettingStarted
Edgar Mesquita edited this page Aug 9, 2026
·
2 revisions
Three commands, no Node, no bundlers, no JavaScript:
dotnet new install eQuantic.UI.Templatesdotnet new equantic-app -n MyAppcd MyApp && dotnet runOpen the printed URL: a themed, server-rendered page whose counter is a C# component — a state
field, a handler, and a Build method. The build compiled it to JavaScript for you (the embedded
toolchain does the bundling; there is nothing to install).
MyApp/
├─ MyApp.csproj # <Project Sdk="eQuantic.UI.Sdk"> — that line IS the build pipeline
├─ global.json # pins the SDK version (stamped by the template)
├─ Program.cs # AddUI → UseTheme → MapUI
├─ Components/
│ └─ StatTile.cs # your first component — its factory is generated from it
└─ Pages/
└─ HomePage.cs # [Page("/")] — a write-once StatefulComponent
-
Pages are classes with
[Page("/route")]. SSR, hydration, client-side navigation, a true 404 for unknown routes (declare[Page("/404")]to brand it) — all wired. -
Writing a tree needs no
newand no import:Column(gap: Space.S4, children: [ Text("Hi"), Button("Go") ]). Your own components join that surface automatically —StatTile(…)in the template is yours. See Declarative Surface. -
Theming is one line: swap
PhotonTheme.InstanceforMaterialTheme.FromSeed(color)inProgram.csand every component rebrands, server and client. -
Server data goes through
[ServerAction]methods — called from the browser as ordinary C#awaits. -
Hot reload: run with
dotnet watchand save a file — the browser updates with your page state replayed. - The same component source realizes NATIVELY on the Photon engine (macOS/iOS/Android shells) — see Photon.
Until packages are on nuget.org, point a nuget.config at the feed that carries them:
<configuration>
<packageSources>
<add key="equantic" value="PATH-OR-URL-TO-FEED" />
</packageSources>
</configuration>