Welcome Contributors
Welcome to the Modrinth Monorepo! This repository containsBefore You Contribute
Before submitting any contributions, please:- Read our Getting Started guide to set up your development environment
- Review our Code Style guidelines
- Check existing issues and pull requests to avoid duplicates
How to Contribute
Find or Create an Issue
Browse the issue tracker for something to work on, or create a new issue to discuss your idea.For major changes, please open an issue first to discuss what you would like to change.
Create a Branch
Create a new branch for your changes:Use descriptive branch names:
feature/for new featuresfix/for bug fixesdocs/for documentationrefactor/for code refactoring
Make Your Changes
Make your changes following our code style guidelines.
- Write clear, self-documenting code
- Add tests for new features
- Update documentation as needed
Test Your Changes
Before committing, ensure your changes work:For Frontend (Web/App):For Backend (Labrinth):
Commit Your Changes
Follow our commit message format:
Issue Reporting
Bug Reports
When reporting bugs, please include:- Clear description of the issue
- Steps to reproduce the problem
- Expected behavior vs actual behavior
- Environment details (OS, browser, app version)
- Screenshots or logs if applicable
Feature Requests
For feature requests, please:- Explain the use case and problem it solves
- Describe the proposed solution
- Consider alternatives you’ve thought about
- Note any breaking changes or compatibility concerns
Pull Request Process
PR Guidelines
- One feature per PR - Keep pull requests focused on a single feature or fix
- Update documentation - Include any necessary documentation updates
- Add tests - New features should include appropriate tests
- Follow code style - Run formatters and linters before submitting
- Describe your changes - Write a clear PR description explaining what and why
PR Checklist
Before submitting your PR, ensure:- Code follows the style guidelines
- All tests pass
- No linting errors (zero warnings required)
- Documentation is updated
- Commit messages follow the format
- No merge conflicts with main branch
Review Process
- A maintainer will review your PR
- Address any requested changes
- Once approved, a maintainer will merge your PR
- Your contribution will be included in the next release
Code of Conduct
We expect all contributors to:- Be respectful and professional
- Welcome newcomers and help them learn
- Give constructive feedback in reviews
- Focus on the code, not the person
- Assume good intentions from others
Unacceptable Behavior
- Harassment, discrimination, or hate speech
- Trolling, insulting comments, or personal attacks
- Publishing others’ private information
- Any conduct that creates an unsafe environment
Community Channels
Connect with the Modrinth community:- Discord: discord.modrinth.com - Chat with the community and developers
- Support: support.modrinth.com - Get help with issues
- GitHub Discussions: Ask questions and share ideas
- Twitter: @modrinth - Follow for updates
Security Issues
If you discover a security vulnerability, do not open a public issue. Please follow our responsible disclosure guidelines instead.License Considerations
All packages in this repository are licensed under their respective licenses. By contributing, you agree that your contributions will be licensed under the same license as the package you’re contributing to. Refer to the LICENSE file in each package for more information. If you plan to fork this repository for your own purposes, please review our copying guidelines.Getting Help
If you need help contributing:- Check the Getting Started guide
- Ask in the
#developmentchannel on Discord - Comment on the relevant issue or PR
- Review existing code for examples
