A (not-so) short introduction to Hotwire and its component frameworks, along with practical, hands-on examples.
If you're building web applications using Ruby on Rails, you must have heard about Hotwire, the suite of front-end frameworks shipped with Rails.
All the new terms associated with Hotwire, such as Turbo, Drive, Frames, Stimulus, Strada, etc. can be very confusing to understand at first 🤔 This crash-course provides a (not-so) short introduction to Hotwire and its component frameworks, along with practical, hands-on examples.
We'll start with a brief overview of the existing approaches to building web applications and the problems associated with them. Then I'll introduce Hotwire, with a short description of the different sub-frameworks that make Hotwire. We’ll also learn how these frameworks fit together to provide a cohesive solution for the front-end ecosystem, not only for Ruby on Rails, but for any back-end framework.
When learning any new technology or a framework, I always find it incredibly useful to have step-by-step real world projects built using that framework. So in this course, we'll build two projects: a simple counter, and a good old to-do list. Doing so, I will show you how you can progressively enhance a component with Turbo Drive, Frames, and Streams.
If you're working with a front-end framework (React, Vue, etc.) backed by a Rails API and are tired with all the complexities and managing two separate codebases, and wondering if you should give Hotwire a try, this course is for you. Even if you're not working with Rails but want to try Hotwire, I will explain how you can use Hotwire in a simple codebase without writing a line of Ruby.
Sounds interesting? Let's get started. By the end of this crash course, I promise that you will have a solid understanding of Hotwire.