Skip to main content

IvorySQL Contribution Guidelines

IvorySQL grows through contributions from developers, testers, documentation writers, translators, community advocates, and users around the world. This page summarizes the main ways to participate in the community and the current incentive policy. For detailed technical guides, please refer to our Contribution Guide.

Ways to Contribute

The IvorySQL community believes that open source should be approachable and that no contribution is too small. You can participate in a way that matches your background and interests:

  • Code contributions: kernel development, feature iteration, bug fixes, plugin development, ecosystem tool adaptation, regression tests, and code review.
  • Non-code contributions: issue reports, documentation improvements, technical translation, community Q&A, online or offline talks, case studies, migration experience sharing, and community promotion.

If you are not ready to submit code yet, you can still make a meaningful contribution by reproducing issues, clarifying requirements, improving docs, or helping other users in community discussions.

Incentive Policy

To encourage long-term participation, the IvorySQL community continues to improve how contributors are recognized and supported:

  • Recognition: contributors may receive community digital certificates and be featured on the official contributor wall to record their open-source footprint.
  • Mentorship: the "Lighthouse" mentoring model helps contributors grow with technical guidance, one-on-one support, and code review feedback from experienced community members.
  • Community opportunities: active contributors may receive speaking, sharing, or participation opportunities at community events such as HOW and other technical activities.
  • Annual incentives: the community may select outstanding contributors for merchandise, public recognition, ecosystem exposure, and other collaboration opportunities.

Specific arrangements may evolve with community programs, but sustained and valuable contributions are always taken seriously and recognized.

Community Collaboration Process

The IvorySQL community employs a closed-loop open-source collaboration process, ensuring that every step—from issue submission to version release—receives closed feedback and continuous improvement. This process encourages positive interaction between users and developers, allowing community development to evolve around actual needs.

The entire closed-loop collaboration process is as follows:

🐛 Submit Issue

Users or developers submit bugs, feature suggestions, or usage feedback on the GitHub Issues page.

💬 Discussion

Maintainers and community members discuss the issue, confirm its nature and priority, and add it to the ToDo List.

🛠️ Development Branch (Fork & Dev)

Developers claim the Issue, fork the repository, develop and test locally, and prepare to submit code.

🚀 Submit Pull Request (PR)

Push the development branch to the forked repository and initiate a merge request to the upstream repository.

🧐 Code Review

Maintainers or core developers review the PR, provide modification suggestions, and ensure quality.

🔀 Merge to Main Branch

After approval, the PR is merged into the main branch, and the corresponding Issue is closed.

📦 Release

The project regularly releases new versions (minor versions quarterly, major versions annually), including the latest fixes and features.

🧪 User Testing

Users upgrade to the new version, provide feedback on new issues, and new Issues are generated, forming a complete feedback loop.

process

Through this complete closed-loop collaboration mechanism, IvorySQL achieves full-process closure of issue response → development contribution → quality assurance → release feedback, promoting the continuous healthy evolution of the project.

📢 Please read and abide by our IvorySQL Community Code of Conduct.

Getting Started

Ready to start contributing? Here's how to begin:

  1. Register a GitHub account and familiarize yourself with basic Git workflows
  2. Sign the Contributor License Agreement (CLA):
  3. Read the detailed contribution guide at docs.ivorysql.org to understand:
    • Community collaboration process
    • Code contribution guidelines
    • Ecosystem component adaptation workflow
    • Testing and documentation requirements
  4. Choose an area of interest and find an Issue to work on
  5. Submit your first PR and join the community!

Need Help?

If you are interested in code contributions but are not sure where to start, or if this is your first time contributing to IvorySQL, the detailed contribution guide will help you find a clear entry point and lower the barrier to participation.