The Road(map) to Traefik Proxy 3.0
Traefik Proxy began as an open source project created by dozens of users who became community members and friends. Every large open source project needs support to grow far, and thus Traefik Labs came to be. Now, 7 years later, we still thrive when we allow our community to lead the growth of Traefik Proxy.
Traefik Proxy has a long history of being shaped by community contributors, which is why the community has remained at the heart of Traefik 3.0. Whether it was Timo expanding and improving Kubernetes integration, or apollo13 building Consul Connect for v2.5, the community is what makes Traefik Proxy great. As we grow, we want to keep this magic and avoid the trap of internal maintainers running the show. Open governance is not only in our DNA; it is a vital everyday practice.
Wait, did you say Traefik 3.0?!
I know, way to bury the lede!
Yes, Traefik 3.0 is on the way! A common mistake made by open source projects is to get so excited by the improvements coming in a new major release that the maintainers close ranks in an effort to deliver a beautiful surprise. However, as exciting as it would be to gift the community with a shiny new release so sleek and fast it needs racing stripes, this is how open source code gets made, but not how open source projects work.
Traefik Proxy 3.0 is all about community requests and UX improvements. Long-awaited features like OpenTelemetry and UDP middlewares will finally make their debut in Traefik Proxy. Proxy 3.0 will be released in at least 2 betas to allow you to take advantage of these improvements as quickly as possible.
The first beta release will focus on breaking fixes that dramatically increase performance and improve configuration. For example, we plan to improve performance by adding the option to use Fast HTTP in addition to the standard HTTP library and implementing a variety of logical fixes. When it comes to UX experience, you can look forward to simplified entry points.
The second beta will focus on enhancing Kubernetes ingress standards and certificate management. When choosing what the internal maintainers will work on, we prioritize community asks that touch the core feature set or require significant Traefik knowledge.
Who runs the code? Community.
Open source projects thrive by bringing together a disparate set of skills and experiences. This is especially true for projects like Traefik Proxy, which sits at the intersection of a seemingly infinite set of technologies. No one team can contain experts in every technology. As Traefik Proxy is used in such a variety of industries, there is no way we could identify every major use case on our own. Yes, the best open source projects need internal maintainers to facilitate and help structure, but the community must steer the ship.
Traefik Proxy would not be where it is today without the varied and in-depth knowledge of our passionate community, especially the roughly 700 contributors whose code makes Traefik Proxy so unique. We know that Traefik Proxy 3.0 will shine because of community contributions and support.
We are fine-tuning our review process to significantly increase community code velocity so that you can create and use your top features quicker than ever. Even better, if you want to contribute, but don’t know what is most needed, there is a new tag, contributor/wanted, that helps identify issues prioritized in the design and review stages. If you decide to create a PR for these issues, the team will have a more rapid turnaround time for consultation and review.
If you’re looking for inspiration, here are some examples of features that many people in the community really want:
Enhanced Automated Certificate Management:
Enhanced Automated Certificate Management based on CRL or OCSP would make all of our lives easier. It would allow the detection of revoked certificates that start transitioning to fresh, new valid certificates. If you are interested in helping us design and implement this feature, we are combining two issues to address the problem: Enforce Certificate Renewal and OCSP Stapeling. Contact us inside these tickets, and we will provide any information you need about Traefik Proxy’s inner workings.
Brotli Middleware:
We hear you! Brotli Compression is super important for some of your use cases. It can cost a lot in performance, so we would love to integrate this as middleware and are looking to work with a community member who has experience with Brotli to help validate the design of this integration. Is there an expert out there that is interested in making this happen?
FastCGI:
We know that FastCGI would really simplify things for many of you. We have been reluctant to implement it because Traefik is not a web server and is not intended to be a web server. However, we really do hear you. If someone in the community would like to create a FastCGI integration, we are all in on it.
Native Kubernetes Let’s Encrypt implementation:
As you likely know, we want to implement Native k8s Let’s Encrypt, using Let’s Encrypt without persistent storage has been a big ask. We have done a ton of design work but would love community experts to review and help us implement it.
Integrate Traefik CRD with External DNS:
External-DNS is a huge topic inside the K8s community. Direct integrations of Traefik CRD with external DNS will reduce the work required for users. We are part way there and need some help pulling this one over the finish line.
Reaching out to the community for guidance on what is important to build and for help is critical, but with over 400 issues and 50 PRs a month, our GitHub account can be overwhelming for community members to use. We want to help you know what is prioritized and where we’re focused so that you can see at a glance where your feedback can be immediately implemented.
Introducing the Traefik Proxy Roadmap
We are thrilled to introduce the Traefik Proxy roadmap to work hand-in-hand with community members to drive the evolution of our project. How are we building the roadmap?
We use insights gleaned from daily triages to identify important features and see how requests fit together to reveal underlying patterns and needs. We then investigate the issues to see how the use case can be met, how wide the need is, and whether it is something that requires a significant understanding of the inner workings of Traefik Proxy. Our internal maintainer team prioritizes working on things with broad applicability and/or which require the most intimate knowledge of Traefik Proxy to be successful. But we also identify what the community wants that does not meet the cut-off criteria or which we do not have the expertise to meet.
We organize all of these top priority issues into the rolling roadmap. At a glance, any community member can see what is currently being worked on, how long it might take, and what is needed. The roadmap is a great place for those looking to provide feedback that will be used immediately.
If you are looking for a way to make a big impact on Traefik Proxy right away, check out issues tagged with contributor/wanted. These issues have top priority. Our team will be available for design help, and you will be bumped to the front of the review queue — even in front of team-built PRs!
You can find our Public Roadmap on GitHub. If you have any comments on the overall direction of Traefik Proxy or the composition of the roadmap, join us in the Community Forum to discuss. As always, we are still tracking individual feature requests in GitHub Issues. We ask for design feedback, more use case information, and better insights into your priorities on these issues. The roadmap is where you can share your feedback!
How to read the Traefik Proxy Roadmap
The Traefik Proxy Roadmap is a kanban board split into five lists ranging from nice-to-have to shipped:
- Short-term: We’re aiming to finish this for the next release, whether major or minor.
- Mid-term: Stretch goals for the next release. If they take too long, they will be moved to the release after.
- On hold: We started working on these issues but ran into technical/dependency issues or prioritized them for a different release.
- Nice-to-have: We analyzed these and really want them. They are not prioritized for the next two releases.
- Shipped: Features, fixes, and enhancements completed.
In addition to seeing where on our roadmap an issue lies, you can watch tags to learn more about the issue. Tags tell you the type of issue (enhancement, feature, or fix), the status of the issue (exploring, ready for design, in progress, on hold, and done), when it is targeted for release, and if a feature requires community leadership (contributor/wanted).
Become a contributor
With community support, Traefik Proxy 3.0 is going to be the fastest, easiest, and most feature-rich version yet. If you want to be part of the Traefik Proxy team as a code or documentation contributor, check out our Contributing Docs to get started. If you are already a contributor and want to become a maintainer, check out the Traefik Proxy Maintainers Program.
We cannot close out a blog post about how important our community is without sending a shout-out to all the open source community members who helped us build Version 2. Thank you!