Repositório GitHub
Visite o repositório do Wails.
Agradecemos suas contribuições para o Wails! Seja corrigindo bugs, adicionando recursos ou melhorando a documentação, seu apoio é muito apreciado.
Encontrou um bug? Abra uma issue com:
Melhorias na documentação são sempre bem-vindas:
Contribua com código através de pull requests:
# Faça um fork do repositório no GitHub# Em seguida, clone seu forkgit clone https://github.com/YOUR_USERNAME/wails.gitcd wails
# Adicione o repositório original (upstream)git remote add upstream https://github.com/wailsapp/wails.git# Instale as dependênciasgo mod download
# Compile a CLI do Wailscd v3/cmd/wails3go build
# Teste sua compilação./wails3 version# Execute todos os testesgo test ./...
# Execute testes de pacotes específicosgo test ./v3/pkg/application
# Execute com cobertura de códigogo test -cover ./...# Atualize a maingit checkout maingit pull upstream main
# Crie um branch para a nova funcionalidadegit checkout -b feature/my-feature# Bons commitsgit commit -m "fix: resolve window focus issue on macOS"git commit -m "feat: add support for custom window chrome"git commit -m "docs: improve bindings documentation"
# Use commits convencionais:# - feat: Nova funcionalidade# - fix: Correção de bug# - docs: Documentação# - test: Testes# - refactor: Refatoração de código# - chore: Manutenção# Envie para seu forkgit push origin feature/my-feature
# Abra o pull request no GitHub# Forneça uma descrição clara# Referencie as issues relacionadas## DescriçãoBreve descrição das alterações
## Alterações- Adicionada a funcionalidade X- Corrigido o bug Y- Documentação atualizada
## Testes- Testado no macOS 14- Testado no Windows 11- Todos os testes passando
## Issues RelacionadasFixes #123// ✅ Bom: Claro, documentado, testado// ProcessData processa os dados de entrada e retorna o resultado.// Retorna um erro se os dados forem inválidos.func ProcessData(data string) (string, error) { if data == "" { return "", errors.New("data cannot be empty") }
result := process(data) return result, nil}
// ❌ Ruim: Sem documentação, sem tratamento de errosfunc ProcessData(data string) string { return process(data)}func TestProcessData(t *testing.T) { tests := []struct { name string input string want string wantErr bool }{ {"valid input", "test", "processed", false}, {"empty input", "", "", true}, }
for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { got, err := ProcessData(tt.input) if (err != nil) != tt.wantErr { t.Errorf("ProcessData() error = %v, wantErr %v", err, tt.wantErr) return } if got != tt.want { t.Errorf("ProcessData() = %v, want %v", got, tt.want) } }) }}A documentação usa Starlight (Astro):
cd docsnpm installnpm run devSeja respeitoso, inclusivo e profissional. Estamos todos aqui para construir um ótimo software juntos.
Os contribuidores são reconhecidos em:
Obrigado por contribuir com o Wails! 🎉
Repositório GitHub
Visite o repositório do Wails.
Comunidade Discord
Junte-se à comunidade.
Documentação
Leia a documentação.