3 ms·
This sounds exhausting! But I'm betting there's some pretty solid benefits or you wouldn't do it. Could you expand on why someone might pick this a little?
by 0xADEADBEE 8y ago
This sounds exhausting! But I'm betting there's some pretty solid benefits or you wouldn't do it. Could you expand on why someone might pick this a little?
- revskill 8y agoThe main benefit i got is that, i could independently package SSR React Component, then my application is just a composition of those packages.
- peteforde 8y agoHonestly, this is such an un-sexy answer that it might shock some sense into people that are still on the fence. It might not be too late for you. Seriously, gang: Rails is productive, fun and lets you focus on making your customers happy instead of optimal package composition.
- revskill 8y agoI was a Rails user for about 4 years. The DX of Rails is unbeatable still today. But this is a trade-off i take into account. I even have a production system running on Rails, with frontend React. This stack's benefits to me: - Universality (one Typescript to rule all backend and frontend) - Separation of concern (no more MVC, only components) - Scalability (each part could scale independently) - Modularity (the business logic now could have its own service as a graphql API) - User interactivity in less code (this is why SSR with React) My new application on this "modern stack" is nearly to be released. If you want to know more, ping me on twitter @revskill.
- peteforde 8y agoI guess this just seems like a massive amount of hoop jumping that, from the outside, looks like OCD levels of premature optimization for future demands that might well not occur. Put differently: how much more time and energy would you have had to work on your MVP if you had just used Rails?
- revskill 8y agoActually, the time spent to setup correctly all the toolings is much more than the MVP itself. The ratio is about 6/1. Once setup, it took me about 1-2 weeks to complete a MVP. Want new feature ? - Add a graphql API (if not exists) and compile to Typescript typings. - Develop and deploy a React Component for that feature. - Install and add to the application.