Pular para o conteúdo

Getting Started

Este conteúdo não está disponível em sua língua ainda.

Thank you for your interest in contributing to Wails! This guide will help you make your first contribution.

Before you begin, ensure you have:

  • Go 1.25+ installed (download)
  • Node.js 20+ and npm (download)
  • Git configured with your GitHub account
  • Basic familiarity with Go and JavaScript/TypeScript

macOS:

  • Xcode Command Line Tools: xcode-select --install

Windows:

  • MSYS2 or similar Unix-like environment recommended
  • WebView2 runtime (usually pre-installed on Windows 11)

Linux:

  • gcc, pkg-config, libgtk-4-dev, libwebkitgtk-6.0-dev (default GTK4 stack)
  • Install via: sudo apt install build-essential pkg-config libgtk-4-dev libwebkitgtk-6.0-dev (Debian/Ubuntu)
  • For the legacy -tags gtk3 build path, also install libgtk-3-dev and libwebkit2gtk-4.1-dev

The typical contribution workflow follows these steps:

  1. Fork & Clone - Create your own copy of the Wails repository
  2. Setup - Build the Wails CLI and verify your environment
  3. Branch - Create a feature branch for your changes
  4. Develop - Make your changes following our coding standards
  5. Test - Run tests to ensure everything works
  6. Commit - Commit with clear, conventional commit messages
  7. Submit - Open a pull request for review
  8. Iterate - Respond to feedback and make adjustments
  9. Merge - Once approved, your changes become part of Wails!

Choose your contribution type:

  1. Find or Report the Bug

    • Check if the bug is already reported in GitHub Issues
    • If not, create a new issue with steps to reproduce
    • Wait for confirmation before starting work
  2. Fork and Clone

    Fork the repository at github.com/wailsapp/wails/fork

    Clone your fork:

    Terminal window
    git clone https://github.com/YOUR_USERNAME/wails.git
    cd wails
    git remote add upstream https://github.com/wailsapp/wails.git
  3. Build and Verify

    Build Wails and verify you can reproduce the bug:

    Terminal window
    cd v3
    go build -o ../wails3 ./cmd/wails3
    # Reproduce the bug to understand it
  4. Create a Bug Fix Branch

    Create a branch for your fix:

    Terminal window
    git checkout -b fix/issue-123-window-crash
  5. Fix the Bug

    • Make the minimal changes needed to fix the bug
    • Don’t refactor unrelated code
    • Add or update tests to prevent regression
    Terminal window
    # Make your changes
    # Add tests in *_test.go files
  6. Test Your Fix

    Run tests to ensure the fix works:

    Terminal window
    go test ./...
    # Test the specific package
    go test ./pkg/application -v
    # Run with race detector
    go test ./... -race
  7. Commit Your Fix

    Commit with a clear message:

    Terminal window
    git commit -m "fix: prevent window crash when closing during initialization
    Fixes #123"
  8. Submit Pull Request

    Push and create PR:

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

    In your PR description:

    • Explain the bug and root cause
    • Describe your fix
    • Reference the issue: “Fixes #123”
    • Include before/after behavior
  9. Respond to Feedback

    Address review comments and update your PR as needed.

Be respectful, constructive, and welcoming. We’re building a friendly community focused on creating great software together.