The development of “celguard” began with my desire to control access to my web services more flexibly and securely. While Traefik offers many possibilities, I wanted a solution that would allow rules to be adjusted dynamically and without complicated configurations.
After experimenting with various approaches, I discovered the Common Expression Language (CEL). With it, I was able to develop middleware that checks HTTP requests based on freely definable rules—without needing to restart the proxy.
During development, I added features such as logging and error handling and continuously worked on improving performance.
If you’re curious, you can find the source code and more information on GitHub.