This is part 1 of a series documenting Hardcover’s Alexandria release. We recently migrated our codebase from Next.js to Ruby on Rails, and it’s been amazing so far! It was a learning experience, and I’m excited to share some of our takeaways. I’ll link each article here as it’s written. Introducing Alexandria: Faster, Smoother, Smarter Part 1: How we fell out of love with Next.js and back in love with Ruby on Rails & Inertia.js Part 2: Moving from the Cloud to the Server – Google & AWS to Digital Ocean and Kamal Part 3: How we use Puppeteer to generate OpenGraph images Part 4: Speeding up Ruby on Rails with Solid Cache, server side rendering, Sidekiq, and Brick Part 5: Securing and Speeding up our API Server Today’s focus is on the main reason for the move from Next.js to Ruby on Rails. This is the first question anyone asks, and the most important one. So let’s dive into it. Just a side note: this is going to be a software development related post, not a book related posts. If you’re here for the Book Vibes, I’d encourage you read about the release first. How We Got Here When Hardcover started, I was primarily a Ruby on Rails developer. I had experience with JS frontends, but Rails was my jam. I’ve been building things in it since before Rails 1.0, worked at multiple startups that use it, built courses to teach it, spoken at meetups about it, and been to conferences. I’ve been all in with Rails for a while. In the late 2010s, single page applications broke out as an alternative way to create applications. It was the JavaScript framework Cambrian Explosion – with jQuery as the common ancestor (in spirit at least). We had Backbone.js, Ember.js, Angular.js, Vue.js, React.js and many more. I’ve shipped code in each of these frameworks that have been seen by millions people (which is easier than it sounds! I’ve heard you can just do stuff – especially on the Internet). The biggest point of friction with these frameworks was always how they would integrate with Ruby on ...
First seen: 2025-05-03 19:45
Last seen: 2025-05-04 09:48