Before I start with any detailed descriptions, let us have a brief look at the “ideal” Ruby web application stack that I am trying to achieve in my work. Not everything is available yet, but “viam supervadet vadens” – a journey of a thousand miles begins with a single step.
- Linux based OS with RubyMine IDE
- PostgreSQL DB and Redis cache
- Hanami.rb framework, to have a full-featured framework with as little magic as possible
- Trailblazer to organize business logic and reusable widgets, plus handle JSON API conversions
- Dependency injection in Ruby code
- Minitest and Capybara for testing, with clear OOP approaches instead of a DSL
- Vue.js + ES6/WebPack for rich JavaScript pages
- Docker for local development and production deployment