Contribuir

Editar esta documentação

Traduza a documentação ou abra o projeto completo no seu computador.

Nada será publicado até que você decida enviar seu trabalho.

Primeiros passos

Como começar a contribuir com o Wails v3

Boas-vindas, colaborador!

Agradecemos seu interesse em contribuir com o Wails! Este guia ajudará você a fazer sua primeira contribuição.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Go 1.25+ instalado (baixar)
  • Node.js 20+ e npm (baixar)
  • Git configurado com sua conta do GitHub
  • Conhecimentos básicos de Go e JavaScript/TypeScript

Requisitos específicos da plataforma

macOS:

  • Ferramentas de Linha de Comando do Xcode: xcode-select --install

Windows:

  • Recomenda-se o MSYS2 ou um ambiente semelhante ao Unix
  • Runtime do WebView2 (geralmente pré-instalado no Windows 11)

Linux:

  • gcc, pkg-config, libgtk-4-dev, libwebkitgtk-6.0-dev (pilha GTK4 padrão)
  • Instale usando: sudo apt install build-essential pkg-config libgtk-4-dev libwebkitgtk-6.0-dev (Debian/Ubuntu)
  • Para o fluxo de compilação legado -tags gtk3, instale também libgtk-3-dev e libwebkit2gtk-4.1-dev

Visão geral do processo de contribuição

O fluxo de trabalho típico de contribuição segue estas etapas:

  1. Crie um fork e clone — Crie sua própria cópia do repositório do Wails
  2. Configure o ambiente — Compile a CLI do Wails e verifique seu ambiente
  3. Crie uma branch — Crie uma branch de funcionalidade para suas alterações
  4. Desenvolva — Faça suas alterações seguindo nossos padrões de código
  5. Teste — Execute os testes para garantir que tudo funcione
  6. Faça o commit — Faça o commit usando mensagens claras e convencionais
  7. Envie — Abra uma pull request para revisão
  8. Aprimore — Responda ao feedback e faça os ajustes necessários
  9. Faça o merge — Após a aprovação, suas alterações passam a fazer parte do Wails!

Guia passo a passo

Escolha o tipo de contribuição:

1

Encontre ou reporte o bug

  • Verifique se o bug já foi reportado nas issues do GitHub
  • Caso contrário, crie uma nova issue com as etapas para reproduzi-lo
  • Aguarde a confirmação antes de começar o trabalho
2

Crie um fork e clone

Crie um fork do repositório em github.com/wailsapp/wails/fork

Clone seu fork:

bash
git clone https://github.com/YOUR_USERNAME/wails.git
cd wails
git remote add upstream https://github.com/wailsapp/wails.git
3

Compile e verifique

Compile o Wails e verifique se você consegue reproduzir o bug:

bash
cd v3
go build -o ../wails3 ./cmd/wails3

# Reproduce the bug to understand it
4

Crie uma branch para a correção do bug

Crie uma branch para sua correção:

bash
git checkout -b fix/issue-123-window-crash
5

Corrija o bug

  • Faça apenas as alterações mínimas necessárias para corrigir o bug
  • Não refatore código não relacionado
  • Adicione ou atualize testes para evitar regressões
bash
# Make your changes
# Add tests in *_test.go files
6

Teste sua correção

Execute os testes para garantir que a correção funcione:

bash
go test ./...

# Test the specific package
go test ./pkg/application -v

# Run with race detector
go test ./... -race
7

Faça o commit da correção

Faça o commit com uma mensagem clara:

bash
git commit -m "fix: prevent window crash when closing during initialization

Fixes #123"
8

Envie uma pull request

Faça o push e crie a PR:

bash
git push origin fix/issue-123-window-crash

Na descrição da PR:

  • Explique o bug e sua causa raiz
  • Descreva sua correção
  • Faça referência à issue: “Fixes #123”
  • Inclua o comportamento antes e depois da correção
9

Responda ao feedback

Resolva os comentários da revisão e atualize sua PR conforme necessário.

Encontrar issues para contribuir

Obter ajuda

  • Discord: Entre no Discord do Wails
  • Discussões: Publique nas Discussões do GitHub
  • Issues: Abra uma issue para relatar um bug reproduzível; use as Discussões para perguntas e um PR de WEP para melhorias

Código de Conduta

Seja respeitoso, construtivo e acolhedor. Estamos construindo uma comunidade amigável, dedicada a criar excelentes softwares em conjunto.

Próximas etapas

Editar página

Última atualização: