Thank you for your interest in contributing! This guide explains how to contribute effectively.
- Use the issue tracker for bugs and problems only
- Include:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Your OS and marchat version
- Any relevant logs or screenshots
- Start a discussion for:
- Feature requests and suggestions
- Questions about setup or usage
- General feedback and ideas
- Sharing your experience
- Showing off customizations
-
Fork & Clone
- Fork the repo on GitHub
- Clone your fork locally
- Keep your fork in sync with upstream
-
Create a Branch
- Branch from
main - Use a clear, descriptive name
- One feature/fix per branch
- Branch from
-
Code Style
- Use
gofmtorgo fmt - Follow idiomatic Go patterns
- Keep code readable and well-commented
- Write clear commit messages
- Use
-
Testing
- Add tests for new features
- Ensure all tests pass locally
- Run
go test ./...
-
Submit Pull Request
- Push to your fork
- Open a PR against
main - Describe your changes clearly
- Link related issues
- GitHub Actions runs CI on all PRs
- Tests must pass before merge
- Dependabot handles dependency updates
- Do not manually update dependencies unless needed for a fix
- Be respectful and constructive
- Follow the Code of Conduct
- All contributions are welcome; no idea is too small!
Thank you for helping make marchat better!