-
Comfortable Mexican Sofa
ComfortableMexicanSofa is a powerful Ruby on Rails 5.2+ CMS (Content Management System) Engine
I did my research, and I really liked comfortable mexican sofa or Comfy. It even had ActiveStorage integration for file uploads! Nothing against other CMS engines, be it RefineryCMS or AlchemyCMS - but I felt that Comfy had the right combination of being extremely simple, yet having enough hidden powers to not become a blocker in the future.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
routing-filter
routing-filter wraps around the complex beast that the Rails routing system is, allowing for unseen flexibility and power in Rails URL recognition and generation.
The problem begins when some of the gems really don't support new Rails version. Like a very nice routing-filter, that we use to simplify handling locale segments in URLs of the website. Unfortunately, this gem relied on very specific internal implementation of Rails routing system, which was largely re-factored in Rails 6.1, completely breaking routing-filter. The last version of routing-filter was released in 2019 and there was not much activity in the repository. So another choice I had is:
-
This, combined with the fact that we are using cells gem for some view components, resulted in another couple of hours of hunting for the problem (it takes some time to debug what exactly and how exactly changed in Rails internals) and then fixing this problem. At this moment, I already spent over 8 hours debugging Rails internals, different gem internals, fixing application, fixing tests, screaming internally.
-
rails-i18n
Repository for collecting Locale data for Ruby on Rails I18n as well as other interesting, Rails related I18n stuff
The cherry on top was that Comfy gem depended on rails-i18n, which overwrote date I18n translations coming from russian gem, breaking translations on some of the pages. Surely enough, this resulted in another hour or so of debugging and fixing.