We're excited that you're interested in contributing to Class Glue! This document outlines the process for contributing to this project. Whether you're fixing bugs, improving documentation, or adding new features, your contributions are welcome.
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub
-
Fork the repository on GitHub.
-
Clone your fork locally:
git clone https://github.com/your-username/class-glue.git cd class-glue
-
Install dependencies:
npm install
-
Create a branch for your changes:
git checkout -b your-branch-name
-
Make your changes in your branch.
-
Run tests to ensure your changes don't break existing functionality:
npm test
-
Ensure your code follows our style guidelines:
npm run lint
-
Commit your changes:
git commit -m "feat: your descriptive commit message"
-
Push to your fork:
git push origin your-branch-name
-
Submit a pull request from your fork to the
dev
branch of the main repository.
- Ensure your PR description clearly describes the problem and solution.
- Include any relevant issue numbers in the PR description.
- Make sure all tests pass and there are no linting errors.
- Your PR will be reviewed by the maintainer. Be open to feedback and be prepared to make changes if requested.
To streamline the PR process, we provide several pull request templates:
-
Default Template: This is automatically loaded when you create a new PR. It's suitable for most contributions and will guide you through providing necessary information.
-
Specific Templates: For more focused contributions, you can use one of our specific templates by adding a query parameter to the PR creation URL:
- For bug fixes: Add
?template=bug_fix.md
- For new features: Add
?template=feature_addition.md
- For bug fixes: Add
For example, to use the bug fix template, your PR creation URL would look like:
Choose the template that best fits your contribution type. If you're unsure, use the default template, and we'll guide you from there.
- Follow the existing code style in the project.
- Write clear, readable, and concise code.
- Comment your code where necessary, especially for complex logic.
- Write meaningful commit messages.
- Use the GitHub issue tracker to report bugs.
- Describe the bug in detail, including steps to reproduce.
- Include information about your environment (OS, Node.js version, etc.).
- Use the GitHub issue tracker to suggest enhancements.
- Clearly describe the feature and its potential benefits.
- Be open to discussion about the feature's implementation.
Thank you for contributing to Class-Glue!