If you've been following my journey, you know I went all in on Elixir a while ago. I left the React treadmill behind, picked Phoenix, and to keep React on the front end I used Inertia.js. For a year, I was happy. I built my SaaS, CourseShelf, and I had a lot of fun doing it.

And then I deleted all of it. 345 commits later, I have completely rebuilt CourseShelf from scratch, this time on full-stack Elixir with Phoenix LiveView. No more React. No more Inertia. No more Node.js.

This is the story of why I did it.

The honeymoon was real (and then it ended)

I want to be fair to Inertia here, because Inertia is genuinely great. When I first adopted it, I was writing every line of code by hand, and the experience was wonderful. You get the productivity of Phoenix on the back end and you get React on the front end, glued together without a REST API in the middle. For someone coming from the React world, it felt like the best of both worlds.