Sobre o projeto
go-app é um pacote Go que permite aos desenvolvedores criar aplicações web progressivas (PWA) usando a linguagem de programação Go e WebAssembly (Wasm). Ele fornece uma sintaxe declarativa para criar e compor elementos HTML inteiramente em código Go, permitindo que os desenvolvedores escrevam elementos de UI reutilizáveis e baseados em componentes sem sair do ecossistema Go.
Os principais recursos incluem:
- Sintaxe declarativa de UI: Componentes são definidos como structs Go que incorporam app.Compo, com um método Render() que retorna elementos app.UI. A sintaxe suporta renderização condicional (app.If/app.Else), manipulação de eventos (OnChange, ValueTo) e criação de elementos HTML padrão (Div, H1, P, Input, Text, etc.).
- Integração padrão com HTTP em Go: Aplicações seguem as interfaces do pacote net/http do Go, usando app.Route para roteamento de componentes e app.Handler para roteamento HTTP, facilitando a execução junto com outros manipuladores HTTP Go.
- Recursos de Progressive Web App: Prontos para uso, as aplicações suportam execução em janela própria, modo offline e são amigáveis para SEO.
- Requisitos: Go 1.18 ou superior e módulos Go.
O projeto é mantido ativamente com CI do GitHub Actions, cobertura do Go Report Card e uma comunidade de colaboradores apoiada pelo Open Collective. A documentação está hospedada em go-app.dev e é construída com o próprio go-app. Projetos notáveis criados com go-app incluem Lofimusic.app, Murlok.io e liwasc.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.