Here at Camunda, we are consistently in awe of our open source community and the amazing things you create using Camunda. During Hacktoberfest last year, we were blown away by the enthusiasm and expertise that the community brought to Camunda projects and community extensions. Based on that experience, to further strengthen and support our community, we’re launching the Camunda Community Hub, a platform for community extensions that we hope will both inspire our current open source community extension Maintainers and encourage new contributors to get started.
The Camunda Community Hub is a GitHub Organization that serves as a single place to find Camunda open source community-contributed extensions. For maintainers, it’s a community of maintainers and Camunda employees that provides peer support, automation, and discoverability. The hub will also provide best practice guides and learning resources for maintainers. Any Camunda community maintainer can migrate their existing extension to the Camunda Community Hub, or can create a new community extension if they so choose.
Hosting your extension in the Hub will make it discoverable and available for all Camunda users to use in their own projects. We’ve put together some information regarding the benefits of joining the Camunda Community Hub, our approach to open source contributions and Maintainership moving forward, and the many ways we’re striving to empower our open source community. Read on to learn more about our exciting plans for this project.
New Contributor Pathways
As a part of our commitment to empower and inspire new contributors to the Camunda open source community, we’re introducing a number of new ways to get involved. These include streamlining opening pull requests using templates for common issues, and the ability to contribute in ways that are not code-specific.
Non-code contributions include issue triage, event-based community roles, content creation opportunities, among others. The Camunda Community Hub’s README will provide a list of resources and next steps for new contributors to get involved with every aspect of the open source software contribution process.
Automated Release Management
One of the key benefits of participating in the Camunda Community Hub is automated release management, via GitHub Actions. Initially, we’ll have a GitHub Workflow that Maintainers can implement to automate the publishing of new artifacts to Maven Central. We plan to introduce further GitHub workflows for automating release management for other frameworks and libraries, in addition to Maven and Java.
Issue Labelling and Triage
The Camunda Community Hub will use Probot to improve how contributors and Maintainers apply issue labels to new open issues across all repositories in the Hub. Users will be able to add labels to issues by adding a comment using the specified Probot command. New contributors will be presented with ‘Good First Issues,’ across a variety of extensions they can contribute to. By implementing Probot in the Camunda Community Hub, project Maintainers will be able to group and classify open issues and pull requests by label, and triage them appropriately. Any contributor can add a label to an issue, which allows for more people to collaborate on issue triage and work together to ensure that pull requests and open issues are properly labelled.
There are also a variety of new GitHub labels being added to the Camunda Community Hub for identifying the lifecycle an extension is in, what area of a project it relates to, the language or framework it’s written in, whether or not an open issue or pull request is critical, and much more.
Project Lifecycle Management and Designation
Understanding where an extension is in its development life cycle is key to successfully evaluating it for implementation in your own projects. With the Camunda Community Hub, we are unveiling a clear lifecycle designation pathway that Maintainers can apply to their project, to let contributors and users alike know where their extension is in its lifecycle, and what that means.
This is our current roadmap for key touch-points throughout the process of creating and building out the Camunda Community Hub. Please keep in mind that these deadlines and priorities are not set in stone, and may change as the project evolves. If a critical component of the project is unable to be completed by the end of the quarter it is scheduled, we will update the community via the Camunda forums. We will also maintain this roadmap both on the upcoming Camunda Community Hub landing page, and on GitHub.
- Begin working together with Camunda community extension maintainers to migrate their extensions currently in the Zeebe GitHub repository into the Camunda Community Hub
- Implement GitHub Actions for automated deployment of new community extension releases to Maven Central
- Introduce new community extension lifecycle labels and classifications
- Create Issue templates for opening a new pull request, proposing a new community extension, and more
- Implement issue triage and labelling best practices through the use of tools such as Probot and Sheilds.io
- Outline and define new contributor guidelines, maintainer expectations, and reviewer expectations
- Aim for 100% Zeebe community extension migration to the Camunda Community Hub by the end of Q1 2021
Q2 2021: Begin working with Camunda community extension maintainers to migrate their extensions in the Camunda Platform repository into the Camunda Community hub
Q3 2021: Begin working with Camunda Community extension maintainers to migrate their extensions in the BPMN.io repository into the Camunda Community Hub
Q4 2021: Scope, plan, and implement the Camunda Community Hub Governance plan
Thank you to our amazing open source community for your hard work, contributions, and expertise. We look forward to working together with you on this project, and are excited to collaborate with you to shape the future of Camunda’s open source software ecosystem. If you have any questions about the Camunda Community Hub, please don’t hesitate to contact us via email at firstname.lastname@example.org.