Repolode
maxence-charriere

maxence-charriere/go-app

Pacote Go para criar progressive web apps com WebAssembly e uma interface declarativa baseada em componentes, escrita inteiramente em Go.

Estrelas
8,973
Forks
406
Issues abertas
52
Último commit
há 24 horas

O que é?

go-app permite que desenvolvedores criem progressive web apps em Go. A interface é escrita como componentes reutilizáveis que criam e combinam elementos HTML diretamente no código Go, sem precisar de JavaScript separado ou de uma linguagem de templates no front-end. O código Go é compilado para WebAssembly para rodar no navegador.

O pacote segue o modelo padrão de net/http do Go, então um app pode ser servido com http.Handle e http.ListenAndServe, como qualquer outro servidor web em Go. Os apps criados com ele podem rodar em uma janela própria, funcionar offline e são projetados para serem amigáveis a SEO. O roteamento entre componentes é feito com app.Route.

O projeto requer Go 1.18 ou mais recente e é instalado como um módulo Go. O site de documentação em go-app.dev apresenta a sintaxe declarativa e um guia para começar.

Recursos principais

  • 01Crie interfaces inteiramente em Go com uma sintaxe declarativa baseada em componentes.
  • 02Compile Go para WebAssembly para rodar no navegador.
  • 03Segue as interfaces padrão de net/http do Go para servir apps.
  • 04Oferece suporte a modo offline e execução em uma janela própria como PWA.
  • 05Oferece roteamento entre componentes com app.Route.

Casos de uso

  • Criar o front-end de um site ou PWA para uma equipe que prefere escrever tudo em Go.
  • Criar apps web instaláveis e capazes de funcionar offline que também precisam ser indexados por mecanismos de busca.
  • Compartilhar tipos e lógica Go entre um servidor de back-end e uma interface executada no navegador.

Início rápido

  1. 1

    Inicialize um módulo Go na pasta do seu projeto

    go mod init
  2. 2

    Instale o pacote go-app

    go get -u github.com/maxence-charriere/go-app/v11/pkg/app
  3. 3

    Siga o guia Getting Started em go-app.dev para criar seu primeiro app

Tópicos

Perguntas frequentes

O que é go-app?
Pacote Go para criar progressive web apps com WebAssembly e uma interface declarativa baseada em componentes, escrita inteiramente em Go. go-app permite que desenvolvedores criem progressive web apps em Go. A interface é escrita como componentes reutilizáveis que criam e combinam elementos HTML diretamente no código Go, sem precisar de JavaScript separado ou de uma linguagem de templates no front-end. O código Go é compilado para WebAssembly para rodar no navegador.
go-app é gratuito? Qual é a licença?
go-app é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
go-app ainda é mantido?
Manutenção ativa. O último commit de go-app foi em 21 de out. de 2026.
Para que posso usar go-app?
Criar o front-end de um site ou PWA para uma equipe que prefere escrever tudo em Go. Criar apps web instaláveis e capazes de funcionar offline que também precisam ser indexados por mecanismos de busca. Compartilhar tipos e lógica Go entre um servidor de back-end e uma interface executada no navegador.
Como instalar go-app?
Inicialize um módulo Go na pasta do seu projeto: go mod init Instale o pacote go-app: go get -u github.com/maxence-charriere/go-app/v11/pkg/app Siga o guia Getting Started em go-app.dev para criar seu primeiro app
Onde consigo go-app?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/maxence-charriere/go-app

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados