Hacker News new | ask | show | jobs
by uptownJimmy 1162 days ago
I guess my implied question should be stated more explicitly: is GitHub's front end code entirely separate fro the Rails code? That's not how Rails apps usually work, I thought.

Admittedly, it's been a long time since I looked at Rails code, and I don't have the slightest idea how GitHub is actually architected. But I don't remember the "front end code" in Rails being a separate thing from the server code, typically: the whole point was server-side rendering. Is GitHub using one of the JS/TS frameworks for the front end? I do remember that being a developing trend, a few years back.

2 comments

Rails can just serve JSON or GraphQL from an API to an SPA frontend, or you can do full server-rendered, or Hotwire to do HTML fragment updates, or any combination thereof. IIRC Github used something like Hotwire but home-grown. I've not done Rails development for a while so not sure what the state of things is for web sockets, but I would think that's not a problem for the framework.

Point is, there's nothing about Rails in particular that would prevent fixing these issues, that's probably the result of development and business priorities, legacy code, etc. that would be an issue with any tech stack.

Order as I remember it: Github initially used pjax, https://github.com/defunkt/jquery-pjax, (maybe "invented" by defunkt?) which I believe was the precursor to turbolinks, https://github.com/turbolinks/turbolinks, which was the precursor to Hotwire.
Makes sense to me, yep. Thanks for the info. I have buddy who works there, I am going to grill him at our dev meetup this week!