Thanks for your interest in contributing to rig.fm. This guide will help you get set up and ready to contribute.
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/rig.git cd rig - Install dependencies:
go mod download
- Build and run:
go build -o rig ./cmd/rig ./rig
rig/
├── cmd/
│ └── rig/ # Application entry point
├── pkg/
│ ├── radiobrowser/ # Radio Browser API client
│ ├── player/ # Audio player (mpv-based)
│ └── ui/ # Bubble Tea TUI components
└── .github/ # CI/CD workflows
- Create a branch for your work:
git checkout -b your-feature-name
- Make your changes
- Test that the app builds and runs:
go build -o rig ./cmd/rig ./rig
- Commit your changes with a clear message
- Push to your fork and open a pull request
- Keep PRs focused on a single change
- Provide a clear description of what the PR does and why
- Include screenshots or recordings for UI changes
- Make sure the project builds without errors
Open an issue with:
- Steps to reproduce
- Expected vs actual behavior
- Your OS and terminal emulator
- Follow standard Go conventions (
gofmt,go vet) - Keep functions small and focused
- Prefer clear names over comments
Releases are automated via GoReleaser. To create a new release:
- Tag the commit:
git tag v0.x.x git push --tags
- The GitHub Actions workflow builds binaries for macOS and Linux, creates a GitHub release, and updates the Homebrew formula automatically.
Open an issue or start a discussion. We're happy to help.