Thank you for your interest in contributing to JoobQ, a fast and efficient asynchronous job queue and scheduler library written in Crystal. We welcome contributions from the community and appreciate your efforts to improve the project. To ensure a smooth collaboration, please follow the guidelines outlined below.
By participating in this project, you agree to uphold our Code of Conduct. Please read it to understand the standards we expect from all contributors.
There are several ways to contribute to JoobQ:
-
Reporting Bugs: If you encounter any issues, please report them by creating a new issue. Provide detailed information to help us understand and resolve the problem.
-
Suggesting Enhancements: We welcome suggestions for new features or improvements. To propose an enhancement, open a new issue and describe your idea in detail.
-
Submitting Pull Requests: If you'd like to contribute code, follow the process outlined below to submit a pull request.
-
Fork the Repository: Click the "Fork" button at the top right corner of the JoobQ repository to create your own copy.
-
Clone Your Fork: Use the following command to clone your forked repository to your local machine:
git clone https://github.com/your-username/joobq.git
-
Set Up the Development Environment: Navigate to the project directory and install the required dependencies:
cd joobq shards install
-
Create a New Branch: Before making changes, create a new branch to work on:
git checkout -b feature/your-feature-name
-
Follow Coding Standards: Ensure your code adheres to the project's coding style and conventions. Consistent code quality is crucial for maintainability.
-
Write Tests: Include tests for your changes to verify functionality and prevent regressions.
-
Update Documentation: If your changes affect documentation, update it accordingly to reflect the modifications.
-
Commit Your Changes: Make sure your commits are clear and descriptive.
-
Push to Your Fork:
git push origin feature/your-feature-name
-
Open a Pull Request: Go to the original JoobQ repository and click on "New Pull Request." Select your branch and provide a detailed description of your changes.
-
Continuous Integration: All pull requests will be automatically tested. Ensure that your changes pass all tests.
-
Code Review: Project maintainers will review your pull request. Be responsive to feedback and make necessary adjustments.
-
Crystal Language Reference: Familiarize yourself with Crystal's syntax and features by visiting the Crystal Language Reference.
-
Crystal Community Guidelines: Understand the community standards by reviewing the Crystal Community Guidelines.
We appreciate your contributions and look forward to collaborating with you to enhance JoobQ!