This document outlines the governance structure of the Testcontainers Open Source Project, its roles, responsibilities, and the decision-making processes that guide the project.
The Testcontainers project is guided by the principles of openness, autonomy, collaboration, and trust.
We aim to build an inclusive and productive community of contributors and users.
Also referred to as the “Testcontainers Steering Committee” (TSC)
- @cristianrgreco
- @eddumelendez
- @HofmeisterAn
- @kiview
- @mdelapenya
- Oversee the overall direction and health of the Testcontainers project across all languages
- Define and evolve the governance model
- Approve onboarding of new subprojects and maintainers
- Manage financial matters (sponsorships, stipends, funding allocation)
- Arbitrate escalated disputes within the community
- Consensus-based with fallback to majority vote when necessary
- Closed matters (e.g., funding) may be handled privately, but outcomes must be transparently shared with the community
Each supported programming language within the Testcontainers ecosystem is led by at least one Language Lead,
a trusted and experienced maintainer with broad authority over that language's implementation and community.
Each individual language project may opt to having multiple Language Leads if they choose to do so.
- Lead the development, vision, and roadmap of the language-specific implementation
- Review and approve significant changes, releases, and architectural decisions
- Coordinate and onboard with Community Maintainers
- Foster a healthy and inclusive sub-community
- Full technical autonomy over the language module
- Expected to operate within the broader values and technical direction of the overall project
Community Maintainers are regular contributors who have earned commit access to specific language repositories.
- Review and merge pull requests
- Engage with the community via issues, discussions, and forums
- Help triage bugs and manage releases (where applicable)
- Act as role models and mentors for new contributors
- Write and merge access to their specific language repositories
- Release rights may be granted at the discretion of the Language Lead
- Nominated by the Language Lead
- Confirmed by the Project Steering Committee
Changes to this governance model must be proposed via a pull request to this document
and approved by the Testcontainers Steering Committee.
This governance model was inspired by and aligns with best practices from other open source projects,
including the CNCF, Rust, and Python communities.