-
Notifications
You must be signed in to change notification settings - Fork 1
GettingStarted pt BR
Edgar Mesquita edited this page Aug 13, 2026
·
4 revisions
🌐 Esta página em: English · Português
Não quer instalar nada ainda? Experimente no playground — o mesmo compilador, no seu browser.
Três comandos, sem Node, sem bundlers, sem JavaScript:
dotnet new install eQuantic.UI.Templatesdotnet new equantic-app -n MeuAppcd MeuApp && dotnet runAbra a URL impressa: uma página com tema, renderizada no servidor, cujo contador é um componente
C# — um campo de estado, um handler e um método Build. O build compilou tudo para JavaScript por
você (a toolchain embarcada faz o bundling; não há nada para instalar).
MeuApp/
├─ MeuApp.csproj # <Project Sdk="eQuantic.UI.Sdk">, essa linha É o pipeline de build
├─ global.json # pina a versão do SDK (carimbada pelo template)
├─ Program.cs # AddUI → UseTheme → MapUI, UseRequestLocalization para as culturas
├─ Components/
│ └─ StatTile.cs # seu primeiro componente; a factory dele é gerada a partir dele
├─ Pages/
│ └─ HomePage.cs # [Page("/")], um StatefulComponent write-once
└─ Resources/
├─ Strings.resx # suas strings — resx .NET comum, o único artefato de localização
├─ Strings.pt-BR.resx
└─ Strings.Designer.cs
-
Páginas são classes com
[Page("/rota")]. SSR, hidratação, navegação client-side, um 404 de verdade para rotas desconhecidas (declare[Page("/404")]para personalizá-lo) — tudo ligado. -
Dois idiomas de nascença. A home lê
Strings.Taglinedo resx e renderiza umCultureSwitcher— clique em Português e a página re-renderiza no lugar, comContado {0} vezes.reformatando junto com o contador. Adicione um terceiro idioma criandoStrings.fr.resxe listandofrnoUseRequestLocalization. Veja Localização para entender como a mesma classe responde no servidor, no browser e numa janela nativa. -
Escrever uma árvore não precisa de
newnem de import:Column(gap: Space.S4, children: [ Text("Oi"), Button("Vai") ]). Seus próprios componentes entram nessa superfície automaticamente — oStatTile(…)do template é seu. Veja Declarative Surface. -
Tema é uma linha: troque
PhotonTheme.InstanceporMaterialTheme.FromSeed(cor)noProgram.cse todo componente se rebrandiza, servidor e cliente. -
Dados do servidor passam por métodos
[ServerAction], chamados do browser comoawaitC# comum. -
Hot reload: rode com
dotnet watch, salve um arquivo, e o browser atualiza com o estado da sua página preservado. - O mesmo componente realiza NATIVAMENTE no engine Photon (shells macOS/iOS/Android). Veja Photon.
Enquanto os pacotes não estão no nuget.org, aponte um nuget.config para o feed que os carrega:
<configuration>
<packageSources>
<add key="equantic" value="CAMINHO-OU-URL-DO-FEED" />
</packageSources>
</configuration>🌐 English · Português
🏁 Comece aqui
📱 Write-once
- Componentes write-once
- Superfície declarativa
- Motor Photon
- Design System
- Capacidades
- Armazenamento
- Formulários
- Editor de código
- Markdown
- Mermaid
- Renderização de Email
🏗️ Arquitetura
⚙️ Compilação
- Compilador
- Avaliação em tempo de compilação
- Recursos C# suportados
- Resolução de tipos externos
- Fluxo de build
- Diagnósticos
⚡ Runtime
🔌 Servidor
🎨 Ecossistema
🚀 Desenvolvimento