--- title: "Contribution Guide" description: "How to contribute to Rowboat — from bug reports to pull requests." icon: "github" --- # Contributing to Rowboat Rowboat is open-source and we welcome contributions of all kinds — bug reports, feature ideas, code, and docs improvements. **Quick links:** - [GitHub Repository](https://github.com/rowboatlabs/rowboat) - [Discord Community](https://discord.gg/wajrgmJQ6b) - [Open Issues](https://github.com/rowboatlabs/rowboat/issues) --- ## Ways to Contribute **Report bugs or suggest improvements** — If something feels off or could be better, [open an issue](https://github.com/rowboatlabs/rowboat/issues/new). Include steps to reproduce for bugs, or a clear description of the improvement you have in mind. **Fix an existing issue** — Browse [open issues](https://github.com/rowboatlabs/rowboat/issues) and comment on one to let us know you're working on it. **Propose a new feature or integration** — Open an issue first so we can discuss the approach before you invest time building it. **Improve documentation** — Typos, unclear explanations, missing examples — all fair game. --- ## Contribution Workflow 1. **Fork** [rowboatlabs/rowboat](https://github.com/rowboatlabs/rowboat) and clone it locally. 2. **Create a branch from `dev`** with a descriptive name (`fix-tool-crash`, `feature-mcp-discovery`). 3. **Make your changes.** Keep PRs focused on a single issue or feature. 4. **Test your changes** locally before submitting. 5. **Open a pull request against `dev`** (not `main`) with a clear description of what you changed and why. Screenshots or short demos are appreciated for UI changes. 6. **Respond to feedback** — maintainers may request changes. This is normal and collaborative. 7. **Merge!** Once approved, we'll merge your PR. For small fixes like typos or formatting, try bundling related changes into a single PR rather than submitting them individually. --- ## Guidelines - **One PR, one concern.** Don't mix unrelated changes in the same pull request. - **Write clear commit messages.** A reviewer should understand what changed from the message alone. - **Follow existing code style.** Match the patterns you see in the codebase. - **Be patient and respectful.** We review PRs as quickly as we can. A polite ping on Discord is always welcome if things go quiet. --- ## Getting Help If you're stuck or unsure about anything, drop a message in our [Discord](https://discord.gg/wajrgmJQ6b). We're happy to help you get unblocked.