artsy / artsy.github.io

The Artsy Engineering Open-Source Developers Blog
https://artsy.github.io
MIT License
1.09k stars 227 forks source link

Comments: Why do we use Relay? #557

Open orta opened 5 years ago

orta commented 5 years ago

When the mobile team at Artsy considered moving to React Native back in 2016, one of the most compelling cases for making that jump was Relay. This, it seems, is a dependency that is rarely used in the JS community and we often find ourselves defending this decision to new engineers during onboarding and to the public at large.

[url]

JuliusKoronci commented 5 years ago

Awesome article, exactly what I was looking for :)

voxmatt commented 5 years ago

Excellent write up. Nice work.

kdawgwilk commented 5 years ago

Out of curiosity, the article mentioned that an audit was performed to see what was still needed in apollo to make the switch worth it. Are there plans to do another audit soon? To me it seemed that most of the things Relay offered that apollo didn't are no longer issues and apollo seems to have even better tooling e.g. Apollo Dev Tools, Apollo Graph Manager, etc. I am currently using Relay but am wondering if apollo is ready for another look?

ashfurrow commented 5 years ago

@kdawgwilk No audit per se, but we are looking to use Apollo server-side for its tools. There are a lot of necessary steps, like using standard Relay (instead of our fork). I don’t think we have any active plans to switch to Apollo on the client, though, just the server.

hegelstad commented 4 years ago

Does the pros and cons still hold true vs. urql as well?

ashfurrow commented 4 years ago

@hegelstad I haven't looked into urql, but we're still quiet happy with Relay. We also use GraphQL outside of just a Node context, like with a recent ecommerce microservice in Rails, so we need a solution that isn't tied directly to React.

kevinhylant commented 4 years ago

Thanks for the great read - also evaluating which GraphQL client to use for a React Native app I'm building for a nonprofit. It will likely always just serve React, Typescript clients so I'm leaning toward Relay despite the barrier to entry... but need to study up more on Apollo.

If Apollo & Relay were in their current states in 2016 when you made your decision. Would you have chosen Apollo?

eshimischi commented 3 years ago

There are some interesting projects here in 2021 Client: 1) Gqless 2) Urql

Server: GraphQL Helix

Gateway: GraphQL Portal