You're doing Rails wrong.
copy link

Tuesday, 07 October 2025
Kevin: Hey, have you tried Vite for Rails 8? It’s insanely fast.

John: I’ve heard of it. Isn’t that a build tool? Didn’t Rails already come with one?

K: Well, it did, but Vite is like… modern. You’ll need to install Node, npm, and configure a few scripts, but it’s totally worth it.

J: Wait, Rails needs Node now?

K: Well, yeah — if you want to use React. Everyone’s using React.

J: Didn’t Rails have something for that?

K: It did, but now you’ll want to use Vite with React Refresh so you get instant component reloads. And if you want TypeScript support, you’ll have to configure that too.

J: Sounds… like a lot.

K: Oh, not really. Just install Babel, configure your .babelrc, add vite-plugin-ruby, then you’ll want PostCSS for your styles.

J: PostCSS?

K: Yeah, and then Tailwind, obviously — you don’t want to write CSS like a peasant.

J: Of course not.

K: Then you’ll probably want to add ESLint and Prettier to make sure your code looks clean, and maybe Husky for pre-commit hooks.

J: So... Vite, React, Babel, PostCSS, Tailwind, ESLint, Prettier, Husky. That’s it?

K: Pretty much. Oh, unless you want server-side rendering — then you’ll need Next.js or Remix.

J: Wait, we’re still talking about a Rails app, right?

K: Yeah, but hybrid stacks are the way to go! You could also use StimulusReflex or Hotwire if you want reactive components without JS frameworks.

J: StimulusReflex sounds like a Marvel character.

K: Ha! No, it’s for real-time updates. But you’ll need ActionCable configured, Redis running, and—

J: Redis?

K: Yeah, you need a pub/sub layer. Don’t worry, it’s just another Docker container.

J: Docker too?

K: Yeah, to isolate your dependencies. And if you want everything reproducible, you’ll need Docker Compose, maybe Fly.io for deployment, and a build pipeline with GitHub Actions.

J: That’s... quite a setup.

K: It’s just modern web development, man. Keeps things simple. What are you doing?

J: Just tinkering.

(John runs a single command. The app boots instantly, working forms, instant loading times, blazing fast navigation.)

K: Wow, that looks like a pretty complex setup. What stack’s that?

J: Vanilla Rails.

Just F#$%^& use Rails.