Retour à l'accueil
eQuantic UI
Framework d'interface — pour les équipes .NET qui livrent des applications web
Écrivez l'interface en C#.Livrez du JavaScript.
Un framework d'interface C# d'abord, qui compile vers TypeScript — pour que les équipes .NET livrent des applications web modernes sans seconde pile technique, sans seconde équipe, sans second processus de déploiement.
Sous licence MIT
Aucun runtime livré
Rendu serveur + hydratation
Counter.cs
public class Counter : StatefulComponent{ private int _count = 3; public override VisualNode Build(...) { var row = new Row(gap: 12); row.Add(new Text($"{_count}")); row.Add(Button("+1", () => SetState( () => _count++))); return row; }}
APERÇU EN DIRECT
3
Retour à l'accueil
eQuantic UI
Framework d'interface — pour les équipes .NET qui livrent des applications web
Écrivez l'interface en C#.Livrez du JavaScript.
Un framework d'interface C# d'abord, qui compile vers TypeScript — pour que les équipes .NET livrent des applications web modernes sans seconde pile technique, sans seconde équipe, sans second processus de déploiement.
Sous licence MIT
Aucun runtime livré
Rendu serveur + hydratation
Counter.cs
public class Counter : StatefulComponent{ private int _count = 3; public override VisualNode Build(...) { var row = new Row(gap: 12); row.Add(new Text($"{_count}")); row.Add(Button("+1", () => SetState( () => _count++))); return row; }}
APERÇU EN DIRECT
3
POURQUOI IL EXISTE
Trois décisions qui fondent le framework
Écrivez l'interface en C# pur
Des composants déclaratifs dans le langage que votre équipe connaît déjà. Compilés vers TypeScript, exécutés comme du JavaScript. Aucun changement de contexte.
Des actions serveur, typées
Appelez des méthodes serveur depuis le client avec un typage complet, une sérialisation automatique et une protection CSRF intégrée. Pas d'échafaudage REST.
Du CSS sans runtime
Les styles sont extraits à la compilation. Pas d'analyse à l'exécution, pas de FOUC, pas de JIT Tailwind. Ce qui est livré est du CSS pur — rapide, cachable, débogable.
Écrivez l'interface en C# pur
Des composants déclaratifs dans le langage que votre équipe connaît déjà. Compilés vers TypeScript, exécutés comme du JavaScript. Aucun changement de contexte.
Des actions serveur, typées
Appelez des méthodes serveur depuis le client avec un typage complet, une sérialisation automatique et une protection CSRF intégrée. Pas d'échafaudage REST.
Du CSS sans runtime
Les styles sont extraits à la compilation. Pas d'analyse à l'exécution, pas de FOUC, pas de JIT Tailwind. Ce qui est livré est du CSS pur — rapide, cachable, débogable.
Écrivez l'interface en C# pur
Des composants déclaratifs dans le langage que votre équipe connaît déjà. Compilés vers TypeScript, exécutés comme du JavaScript. Aucun changement de contexte.
Des actions serveur, typées
Appelez des méthodes serveur depuis le client avec un typage complet, une sérialisation automatique et une protection CSRF intégrée. Pas d'échafaudage REST.
Du CSS sans runtime
Les styles sont extraits à la compilation. Pas d'analyse à l'exécution, pas de FOUC, pas de JIT Tailwind. Ce qui est livré est du CSS pur — rapide, cachable, débogable.
CE QU'IL FAIT
Les cinq choses qu'une équipe .NET remarque d'abord
Plus de 20 composants prêts pour la production
Grille avec virtualisation, Modale, Formulaire, Tableau, Onglets, Combobox, Arbre, Calendrier, Toast — toutes les primitives nécessaires à une vraie application. Thémables, accessibles (WAI-ARIA) et testés.
Rechargement à chaud de niveau entreprise
Enregistrez un fichier C# et le navigateur se met à jour sur place, en conservant l'état des composants. La boucle est aussi serrée que celle dont votre équipe front dispose déjà.
Posez des points d'arrêt dans votre code d'interface
Les source maps portent le C# jusqu'au bout, donc le débogueur s'arrête dans le fichier que vous avez écrit — pas dans du JavaScript généré qu'il faudrait décortiquer.
Styles à la compilation, vitesse à l'exécution
Placez les styles à côté des composants — ils sont livrés comme feuille de style statique. Pas d'analyse à l'exécution, pas de JS en plus, pas de noms de classes à faire descendre en cascade.
Appelez votre backend comme une méthode locale
Annotez une méthode C# avec [ServerAction] et appelez-la depuis un onClick de bouton. Les arguments se sérialisent, les types circulent, les erreurs remontent. CSRF et authentification pris en charge.
Plus de 20 composants prêts pour la production
Grille avec virtualisation, Modale, Formulaire, Tableau, Onglets, Combobox, Arbre, Calendrier, Toast — toutes les primitives nécessaires à une vraie application. Thémables, accessibles (WAI-ARIA) et testés.
Rechargement à chaud de niveau entreprise
Enregistrez un fichier C# et le navigateur se met à jour sur place, en conservant l'état des composants. La boucle est aussi serrée que celle dont votre équipe front dispose déjà.
Posez des points d'arrêt dans votre code d'interface
Les source maps portent le C# jusqu'au bout, donc le débogueur s'arrête dans le fichier que vous avez écrit — pas dans du JavaScript généré qu'il faudrait décortiquer.
Styles à la compilation, vitesse à l'exécution
Placez les styles à côté des composants — ils sont livrés comme feuille de style statique. Pas d'analyse à l'exécution, pas de JS en plus, pas de noms de classes à faire descendre en cascade.
Appelez votre backend comme une méthode locale
Annotez une méthode C# avec [ServerAction] et appelez-la depuis un onClick de bouton. Les arguments se sérialisent, les types circulent, les erreurs remontent. CSRF et authentification pris en charge.
Plus de 20 composants prêts pour la production
Grille avec virtualisation, Modale, Formulaire, Tableau, Onglets, Combobox, Arbre, Calendrier, Toast — toutes les primitives nécessaires à une vraie application. Thémables, accessibles (WAI-ARIA) et testés.
Rechargement à chaud de niveau entreprise
Enregistrez un fichier C# et le navigateur se met à jour sur place, en conservant l'état des composants. La boucle est aussi serrée que celle dont votre équipe front dispose déjà.
Posez des points d'arrêt dans votre code d'interface
Les source maps portent le C# jusqu'au bout, donc le débogueur s'arrête dans le fichier que vous avez écrit — pas dans du JavaScript généré qu'il faudrait décortiquer.
Styles à la compilation, vitesse à l'exécution
Placez les styles à côté des composants — ils sont livrés comme feuille de style statique. Pas d'analyse à l'exécution, pas de JS en plus, pas de noms de classes à faire descendre en cascade.
Appelez votre backend comme une méthode locale
Annotez une méthode C# avec [ServerAction] et appelez-la depuis un onClick de bouton. Les arguments se sérialisent, les types circulent, les erreurs remontent. CSRF et authentification pris en charge.
LA BIBLIOTHÈQUE
22 composants, pas un kit de démarrage
Grid
Données
Virtualisée, triable, filtrable
Table
Données
Colonnes redimensionnables, lignes dépliables
Tree
Données
Chargement paresseux, réordonnancement par glisser
Form
Saisie
Champs validés, compatibles asynchrone
Combobox
Saisie
Recherche asynchrone, sélection multiple
DatePicker
Saisie
Plages, langues, fuseaux horaires
Modal
Superposition
Empilables, piège de focus, portail
Drawer
Superposition
Ancré sur le côté, redimensionnable
Toast
Superposition
Mis en file, sensible aux actions
Tabs
Navigation
Panneaux paresseux, navigation clavier
Menu
Navigation
En cascade, piloté au clavier
Breadcrumb
Navigation
Tronquant, débordement en liste
Card
Mise en page
À emplacements, thémable
Splitter
Mise en page
Redimensionnable, état persistant
Stack
Mise en page
Jetons d'espacement, responsive
Calendar
Date
Vues mois / semaine / agenda
Scheduler
Date
Création par glisser, récurrences
Chart
Visualisation
Barres, lignes, anneau — thémables
Progress
Retour
Linéaire, circulaire, indéterminé
Skeleton
Retour
Forme automatique, animé
Avatar
Affichage
Initiales en repli, point de statut
Badge
Affichage
Compteur, couleurs sémantiques
Grid
Données
Virtualisée, triable, filtrable
Table
Données
Colonnes redimensionnables, lignes dépliables
Tree
Données
Chargement paresseux, réordonnancement par glisser
Form
Saisie
Champs validés, compatibles asynchrone
Combobox
Saisie
Recherche asynchrone, sélection multiple
DatePicker
Saisie
Plages, langues, fuseaux horaires
Modal
Superposition
Empilables, piège de focus, portail
Drawer
Superposition
Ancré sur le côté, redimensionnable
Toast
Superposition
Mis en file, sensible aux actions
Tabs
Navigation
Panneaux paresseux, navigation clavier
Menu
Navigation
En cascade, piloté au clavier
Breadcrumb
Navigation
Tronquant, débordement en liste
Card
Mise en page
À emplacements, thémable
Splitter
Mise en page
Redimensionnable, état persistant
Stack
Mise en page
Jetons d'espacement, responsive
Calendar
Date
Vues mois / semaine / agenda
Scheduler
Date
Création par glisser, récurrences
Chart
Visualisation
Barres, lignes, anneau — thémables
Progress
Retour
Linéaire, circulaire, indéterminé
Skeleton
Retour
Forme automatique, animé
Avatar
Affichage
Initiales en repli, point de statut
Badge
Affichage
Compteur, couleurs sémantiques
Grid
Données
Virtualisée, triable, filtrable
Table
Données
Colonnes redimensionnables, lignes dépliables
Tree
Données
Chargement paresseux, réordonnancement par glisser
Form
Saisie
Champs validés, compatibles asynchrone
Combobox
Saisie
Recherche asynchrone, sélection multiple
DatePicker
Saisie
Plages, langues, fuseaux horaires
Modal
Superposition
Empilables, piège de focus, portail
Drawer
Superposition
Ancré sur le côté, redimensionnable
Toast
Superposition
Mis en file, sensible aux actions
Tabs
Navigation
Panneaux paresseux, navigation clavier
Menu
Navigation
En cascade, piloté au clavier
Breadcrumb
Navigation
Tronquant, débordement en liste
Card
Mise en page
À emplacements, thémable
Splitter
Mise en page
Redimensionnable, état persistant
Stack
Mise en page
Jetons d'espacement, responsive
Calendar
Date
Vues mois / semaine / agenda
Scheduler
Date
Création par glisser, récurrences
Chart
Visualisation
Barres, lignes, anneau — thémables
Progress
Retour
Linéaire, circulaire, indéterminé
Skeleton
Retour
Forme automatique, animé
Avatar
Affichage
Initiales en repli, point de statut
Badge
Affichage
Compteur, couleurs sémantiques
MESURÉ SUR UNE APPLICATION « HELLO WORLD »Taille du paquet et temps d'interactivité
PLUS BAS EST MIEUX
eQuantic.UIUS
18 kB142 ms
React + Redux
64 kB410 ms
Angular
132 kB720 ms
Blazor WASM
1450 kB2100 ms
POURQUOI LES ÉQUIPES .NET LE CHOISISSENT
Une seule pile, pas deux
La plupart des maisons .NET finissent avec une pile JS qu'elles maintiennent à peine — une équipe en C#, une autre en TypeScript, deux chaînes d'intégration, deux processus de déploiement. eQuantic.UI ramène tout cela à la pile que vous faites déjà tourner.
Un seul langage, de bout en boutLe modèle, le point d'accès et le bouton qui l'appelle sont tous en C#, relus par les mêmes personnes, dans un seul dépôt.
Aucun surcoût de runtime JSLe framework disparaît à la compilation. Ce qui est livré, c'est du JavaScript que votre navigateur exécute et du CSS qu'il met en cache — pas un interpréteur.
Un outillage de niveau productionUn rechargement à chaud qui conserve l'état, des points d'arrêt dans vos propres fichiers, et le build .NET que vous avez déjà en intégration continue.
Possédé, pas louéSous licence MIT, sur NuGet, et utilisé par les produits de ce catalogue — y compris le site que vous êtes en train de lire.
POURQUOI LES ÉQUIPES .NET LE CHOISISSENT
Une seule pile, pas deux
La plupart des maisons .NET finissent avec une pile JS qu'elles maintiennent à peine — une équipe en C#, une autre en TypeScript, deux chaînes d'intégration, deux processus de déploiement. eQuantic.UI ramène tout cela à la pile que vous faites déjà tourner.
Un seul langage, de bout en boutLe modèle, le point d'accès et le bouton qui l'appelle sont tous en C#, relus par les mêmes personnes, dans un seul dépôt.
Aucun surcoût de runtime JSLe framework disparaît à la compilation. Ce qui est livré, c'est du JavaScript que votre navigateur exécute et du CSS qu'il met en cache — pas un interpréteur.
Un outillage de niveau productionUn rechargement à chaud qui conserve l'état, des points d'arrêt dans vos propres fichiers, et le build .NET que vous avez déjà en intégration continue.
Possédé, pas louéSous licence MIT, sur NuGet, et utilisé par les produits de ce catalogue — y compris le site que vous êtes en train de lire.
LA PILE TECHNIQUE
S'intègre à ce que vous exécutez déjà
RUNTIME
.NET 8 / 9Bun (build)Roslyn analysersMSBuild
SORTIE FRONTEND
TypeScript 5+Web componentsESM modulesSSR + hydration
HÉBERGEMENT
ASP.NET CoreStatic + SSRAzure / AWS / VercelEdge runtimes
OUTILLAGE
Rider / VSHot reloadF12 debuggerOpenTelemetry hooks
RUNTIME
.NET 8 / 9Bun (build)Roslyn analysersMSBuild
SORTIE FRONTEND
TypeScript 5+Web componentsESM modulesSSR + hydration
HÉBERGEMENT
ASP.NET CoreStatic + SSRAzure / AWS / VercelEdge runtimes
OUTILLAGE
Rider / VSHot reloadF12 debuggerOpenTelemetry hooks
RUNTIME
.NET 8 / 9Bun (build)Roslyn analysersMSBuild
SORTIE FRONTEND
TypeScript 5+Web componentsESM modulesSSR + hydration
HÉBERGEMENT
ASP.NET CoreStatic + SSRAzure / AWS / VercelEdge runtimes
OUTILLAGE
Rider / VSHot reloadF12 debuggerOpenTelemetry hooks
DE LA COMMUNAUTÉCe qu'on en dit
“This initiative has a huge potential.”
WC
Willian CésarSoftware Engineer
“This initiative has a huge potential.”
WC
Willian CésarSoftware Engineer
COMMENCER
De zéro à une application qui tourne en 60 secondes
# Installer le modèledotnet new install eQuantic.UI.Templates# Scaffold a new appdotnet new equi-app -n MyAppcd MyApp# Lancer avec rechargement à chauddotnet watch run
LES QUESTIONS DES INGÉNIEURS
Le framework, honnêtement
Un seul langage, de bout en bout
Installez le modèle, échafaudez une application, et regardez le C# devenir le JavaScript que vos utilisateurs exécutent vraiment. Sous licence MIT, sur NuGet dès aujourd'hui.
Prêt à livrer quelque chose de réel ?
Réservez un appel de découverte de 30 minutes. Dans l'heure, nous vous dirons si nous sommes le bon partenaire — ou qui l'est.
Prêt à livrer quelque chose de réel ?
Réservez un appel de découverte de 30 minutes. Dans l'heure, nous vous dirons si nous sommes le bon partenaire — ou qui l'est.
© 2026 eQuantic Tech. Tous droits réservés.