How to Contribute
DevoxxGenie is an open-source project, and we welcome contributions from the community. Whether you're fixing bugs, improving documentation, or adding new features, your help is appreciated!
Ways to Contribute
There are many ways to contribute to DevoxxGenie:
- Code Contributions: Implement new features or fix bugs
- Documentation: Improve or extend the documentation
- Bug Reports: Report issues you encounter
- Feature Requests: Suggest new features or improvements
- Testing: Test the plugin across different environments
- Community Support: Help answer questions from other users
Getting Started
Prerequisites
Before you start contributing, make sure you have:
- Basic knowledge of Java
- Understanding of IntelliJ IDEA plugin development
- Git installed
- JDK 17 or later
- IntelliJ IDEA (Community or Ultimate)
Setting Up the Development Environment
-
Fork the Repository
Fork the DevoxxGenie repository on GitHub.
-
Clone Your Fork
git clone https://github.com/YOUR-USERNAME/DevoxxGenieIDEAPlugin.gitcd DevoxxGenieIDEAPlugin -
Set Up the Project in IntelliJ IDEA
- Open IntelliJ IDEA
- Select "Open" and navigate to the cloned repository
- Choose "Open as Project"
- Allow the Gradle sync to complete
-
Verify Setup
Run the Gradle build task to ensure everything is set up correctly:
./gradlew build
Development Workflow
-
Create a Branch
Create a branch for your changes:
git checkout -b feature/your-feature-nameOr for bugfixes:
git checkout -b fix/issue-description -
Make Your Changes
Implement your changes, following the code style guidelines.
-
Run Tests
Run the tests to ensure everything works as expected:
./gradlew test -
Build the Plugin
Build the plugin to verify it packages correctly:
./gradlew buildPlugin -
Test the Plugin
Run the plugin in a development instance of IntelliJ:
./gradlew runIde -
Commit Your Changes
Commit your changes with a clear and descriptive commit message:
git commit -am "Add feature: description of your changes" -
Push Your Changes
Push your changes to your fork:
git push origin feature/your-feature-name -
Create a Pull Request
Go to the DevoxxGenie repository and create a pull request from your fork.
Code Style Guidelines
DevoxxGenie follows standard Java code style conventions:
- Use 4 spaces for indentation
- Follow Java naming conventions
- Write clear, concise comments
- Include JavaDoc for public APIs
- Maximum line length of 120 characters
- Organize imports
Pull Request Guidelines
When submitting a pull request:
- Link Related Issues: Reference any related issues in your PR description
- Describe Your Changes: Provide a clear description of what your changes do
- Include Tests: Add tests for new features or bug fixes
- Update Documentation: Update any relevant documentation
- Keep PRs Focused: Each PR should address a single concern
- Be Responsive: Respond to feedback and update your PR as needed
Finding Issues to Work On
- Check the Issues tab on GitHub
- Look for issues labeled "good first issue" for beginner-friendly tasks
- Join the GitHub Discussions to find areas where help is needed
Community Guidelines
- Be Respectful: Treat all community members with respect
- Be Constructive: Provide constructive feedback and suggestions
- Be Collaborative: Work together to improve the project
- Be Patient: Not all contributors have the same expertise or availability
- Be Inclusive: Welcome new contributors and help them get started
Additional Resources
Thank you for contributing to DevoxxGenie! Your efforts help make this tool better for everyone.