Rejoice, Rejoice dark mode users!
Swagger (apart from having a hip, down-with-the-kids name) is a set of tools developers use when building and maintaining REST APIs. Swagger UI in particular takes your API’s definition and turns it into a visual, interactive reference — showing request types, endpoint paths, schemas, and allowing you to poke and prod the API directly from the browser.
It’s been a part of my development life now for a very long time. It’s useful when working across large teams and having a handy ‘how do I use this endpoint’ reference. It also allows at a glance to see what logic might be getting too messy, what routes might need refactoring due to complexity. Needless to say, over the years I’ve spent a lot of hours staring at Swagger - It’s a neat tool and myself and many other dev’s love Swagger.
Sounds good
Often these ‘backbone of the internet’ type tools that so many developers use in day to day life are thankfully open source and largely powered by contributors to their public repos with new features, requests and fixes. As everyone know’s I’m a big fan of open source projects and always try to get stuck in when I have time.
One evening, I browsed Github’s open issues for interesting ones to tackle and came across multiple requests in the Swagger UI repo for a Dark Mode. Some dating back as far as 2019, with various attempts at PR’s being made - yet none seemingly being merged in.
“Easy Enough” I thought along with “Finally, my eyes!” and set to work one evening implementing a Dark Mode toggle to the top bar of Swagger. Whilst I’m no React expert, I got it done quick, wrote my tests and submitted my PR.


Github makes you smile sometimes!
Months passed and my PR seemed to gain positive attention with many users showing their support for the PR and the new feature we had longed for. Something so small - yet seemingly so useful. As time went on, I started to feel however that I’d done something wrong. My PR sat dormant, with no reviews - only the occasional “good job” comment. Eventually I stopped checking in, seeing one day my PR had a merge conflict with main and not enough free time to come back and update it. Occasionally I would get a new notification about a user referencing the PR, but that was it. As far as I was concerned, someone in the Swagger team simply did not like my feature or thought it wasn’t needed.
That is until last week, when I was pleasantly surprised to see that GitHub user Glowcloud had taken my forgotten PR and improved upon it with their own PR, tweaking the colours, fixing the merge conflict and seemingly summoning the Swagger team to have a swift review and merge take place. I could hardly believe it!. A PR I’d essentially forgotten about due to my own time limitations, someone else had picked up and dragged across the finish line.
Now, the fun for me in open source contributions comes from the fact I’ve improved something, that I’ve given back. That other people are using something I have spent time building and over the years I’ve given my time to various good causes and fun projects but this was slightly different. Yes, I am very chuffed that I got my Dark Mode finally added in ( as it means my eyes will finally stop bleeding! ) - but I’m more so happy that GlowCloud actually took my existing PR, built upon it, and TOGETHER we got the job done.
So that’s it, just wanted to share that little tidbit, because I don’t have as much time as I’d like to give back to open source ( and this is such a tiny feature in the grand scheme of things ) but having someone work together on github to achieve the same thing and make something better, gives me a little bit of Christmas joy that actually, us humans ain’t all bad.