Thank you for considering contributing to Meal Match! This document provides guidelines to help you get involved.
- How to File a Bug Report
- How to Suggest a New Feature
- How to Submit a Pull Request
- Setting Up Your Environment
- Running Tests
- Types of Contributions We're Looking For
- Getting Started for Newcomers
- Technical Requirements
- High-Level Design and Architecture
- Project Ground Rules
- Getting in Touch
If you find a bug, please help us improve the project by filing a bug report:
- Check the existing issues to ensure it hasn't been reported yet.
- Include a clear and descriptive title.
- Provide as much detail as possible about the issue, including steps to reproduce, expected behavior, and screenshots if applicable.
- Label the issue as a bug.
We welcome suggestions for new features:
- Start by checking the existing issues to see if your idea has already been suggested.
- Open a new issue with the
enhancement
label. - Clearly describe the feature, including why it would be useful and any implementation ideas you may have.
To contribute code:
- Fork the repository.
- Create a new branch for your feature or bugfix:
git checkout -b feature/your-feature-name
. - Make your changes, ensuring you follow the project's coding style.
- Write tests to cover any new code.
- Commit your changes:
git commit -m "Add your descriptive message here"
. - Push to your branch:
git push origin feature/your-feature-name
. - Submit a pull request to the
main
branch.
- Your PR will be reviewed by another group member.
- Feedback may be provided, and you might be asked to make changes.
- Once approved, your PR will be merged. If additional work is needed, we’ll guide you through it.
To ensure the quality of your contributions:
- Run the test suite with
npm test
. - Make sure all tests pass before submitting your pull request.
- Add new tests for any code you write to ensure future stability.
We appreciate various contributions, including but not limited to:
- Bug fixes
- New features
- Documentation improvements
- Code refactoring
- Test coverage
Please avoid:
- Submitting untested code.
- Large, unscoped changes without discussion.
- Changes that break existing functionality.
If you're new to the project, look for issues labeled with good first issue
. These are suitable for newcomers and provide a great way to start contributing.
Please ensure that your contributions adhere to the following:
- Follow the Javascript coding style guide.
- Include relevant tests with each change.
- Update documentation if your changes affect it.
For an overview of the project's design and architecture, please refer to the project proposal. This will give you context on how the different parts of the project fit together.
We expect contributors to adhere to the Code of Conduct. This includes:
- Respectful and inclusive behavior.
- Constructive feedback.
- Collaboration over competition.
If you have any questions, feel free to open an issue or reach out via email (softeng310group7@gmail.com) for general inquiries.
Thank you for contributing to Meal Match!