Open Source
Write UI in C#. Ship JavaScript.
eQuantic UI compiles your C# components to optimised TypeScript/JavaScript. Build reactive web UIs with the language and tools you already know.
Why eQuantic UI?
The best of both worlds: C# productivity with JavaScript performance.
Write UI in C#
Use familiar C# syntax to define your UI. No JavaScript required.
Compiles to TypeScript
Automatic compilation to optimised TypeScript/JavaScript bundles with Bun.
Server Actions
Seamless client-server communication with [ServerAction] attribute.
Enterprise Hot Reload
Instant feedback during development with eqc --watch, maintaining application state.
Full C# Debugging
Native Source Map support allows you to debug your C# code directly in the browser DevTools.
Zero-runtime CSS
Styles are extracted at build-time into static CSS, eliminating client-side computation overhead.
Modern C# Support
Full support for C# 12 features including Recursive Patterns, using var, and advanced switch expressions.
See the Magic
Write declarative UI in C#. The compiler generates optimised TypeScript.
using eQuantic.UI.Core;
using eQuantic.UI.Components;
[Page("/counter")]
public class Counter : StatefulComponent
{
[ServerAction]
public async Task<int> IncrementOnServer(int value)
{
return value + 1;
}
public override ComponentState CreateState() => new CounterState();
}
public class CounterState : ComponentState<Counter>
{
private int _count = 0;
public override IComponent Build(RenderContext context)
{
return new Container {
ClassName = "counter",
Children = {
new Heading($"Count: {_count}", 1),
new Row {
Gap = "1rem",
Children = {
new Button {
Text = "+",
OnClick = () => SetState(() => _count++)
},
new Button {
Text = "Server +",
OnClick = async () => {
_count = await Component.IncrementOnServer(_count);
SetState(() => {});
}
}
}
}
}
};
}
}20+ Production-Ready Components
Everything you need to build modern web applications.
Layout
Container
Row
Column
Grid
GridItem
Stack
Box
Flex
Input
TextInput
TextArea
Select
Checkbox
Radio
RadioGroup
Switch
Slider
Display
Text
Heading
Badge
Avatar
Card
Table<T>
List
Feedback
Alert
Toast
Spinner
Navigation
Button
Link
Navbar
Sidebar
Tabs
Breadcrumb
Overlay
Modal
Drawer
Get Started in Minutes
Install the template, create your first component, and see it running in your browser.
Coming Soon - NuGet packages in development
# Install the template
dotnet new install eQuantic.UI.Templates
# Create a new app
dotnet new equantic-app -n MyApp
cd MyApp
# Run with hot reload
dotnet runBuilt on Proven Technologies
C# / .NET 8
TypeScript
Bun
ASP.NET Core
Roslyn Compiler