Building Modern Web Apps with Rails and Hotwire
How to create fast, responsive web applications without JavaScript frameworks.
November 21, 2025
The Return of Server-Side Rendering
For the past decade, the frontend world has been dominated by React, Vue, and Angular. These frameworks promised interactivity and great user experiences, but they came with massive complexity: build systems, state management, hydration bugs, and JavaScript bundles measured in megabytes.
Hotwire takes a different approach. Instead of shipping your entire application logic to the browser, you send HTML over the wire. Updates are fast, interactive, and the developer experience is dramatically simpler.
Why This Works So Well
Modern browsers are incredibly efficient at rendering HTML. Network speeds have increased dramatically. Server infrastructure is cheaper and more powerful than ever. The combination means server-rendered HTML can feel just as responsive as a React app, without the complexity.
With Turbo Drive, your entire site behaves like a single-page app automatically. With Turbo Frames, you can update specific parts of the page without full refreshes. With Turbo Streams, you get real-time updates over WebSockets. And Stimulus gives you just enough JavaScript for the interactions that truly need it.
The Development Experience
Here's what I love about building with Rails and Hotwire: you write Ruby. That's it. No context switching between languages. No build step. No npm dependency hell. You get hot reloading in development, and deploying to production is a single command.
When you pair this with AI assistance from Claude Code, you can go from idea to working application in hours, not weeks. The AI understands Rails conventions, can write proper Hotwire code, and helps you avoid common pitfalls.
Deploy with Confidence
Once your app is built, deploying to Deplo.io in Switzerland means you get Swiss quality infrastructure: automatic SSL, database backups, and the reliability you need for production applications. No DevOps PhD required.
57 claps