Panel Discussion: GraphQL + React

This ad is not shown to multipass and full ticket holders
React Summit US
React Summit US 2025
November 17 - 20, 2025
New York, US & Online
The biggest React conference in the US
Learn More
In partnership with Focus Reactive
Upcoming event
React Summit US 2025
React Summit US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

FAQ

The main focus of the React Summit panel discussion is to explore the experiences and insights of various developers regarding the use of React and GraphQL, sharing their personal introductions to these technologies and discussing the benefits and challenges associated with them.

The panelists at the React Summit include Kurt Kemple, Phil Pluckfin, Trevor Blatts, Vishwal Mehta, and Scott Moss, who are professionals with significant experience in development and advocacy in technologies like React and GraphQL.

The panelists were introduced to React and GraphQL through various means such as social media, professional recruitment, working on projects, attending conferences, and tinkering with related technologies like Gatsby.

Key benefits of using GraphQL with React include simplified state management, tight coupling of data with app views, real-time capabilities, and enhanced data fetching and caching, which overall streamline development processes and improve performance.

The panelists recommend several resources such as the official GraphQL documentation, books like 'Learning GraphQL' by Eve Porcello, the Apollo full stack tutorial, the 'How to GraphQL' website, and platforms like Frontend Masters for comprehensive courses.

Challenges in managing state with GraphQL and React include differentiating between API data state and UI state, effectively utilizing client-side resolvers, and leveraging context and hooks in React to manage local state alongside GraphQL data.

Preferred methods for state management in React and GraphQL applications include using Apollo for client-side state management, React's context and hooks for local state, and tools like SWR and React Query for handling asynchronous operations and caching.

24 min
17 Jun, 2021

Comments

Sign in or register to post your comment.
Video Summary and Transcription
The React Summit panel discussion dives deep into the integration of React with GraphQL, highlighting various experiences and insights from developers. The talk covers the benefits of GraphQL clients, such as simplified state management, caching, and real-time capabilities, making it easier for React developers to focus on building their apps. It emphasizes the importance of understanding GraphQL fundamentals and recommends resources like the Apollo full stack tutorial, How to GraphQL, and Hasura's docs. The discussion also touches on the use of Apollo for state management, React's context API, and hooks. Gatsby is mentioned as a good starting point for understanding GraphQL, while tools like SWR and React Query are recommended for API interactions. The panelists share their personal journeys into GraphQL, noting its impact on reducing complex transformation code and enhancing data handling.

1. Introduction to the Panel

Short description:

Thank you for joining us at React Summit. Let's get into this panel with introductions from Kurt Kemple, Phil Pluckthun, Trevor Blades, Vishwa Mehta, and Scott Moss. We have experts from Apollo GraphQL, Formidable, Hazura, and TypeIO. Excited to chat with everyone about React and GraphQL!

Microsoft Mechanics Microsoft Mechanics www.microsoft.com www.microsoft.com www.microsoft.com Microsoft Mechanics Awesome. So thank you so much for joining us, everyone. I hope you're enjoying React Summit as much as I am. It's been a blast so far to see the talks and get to interact with everybody.

And yeah, without further ado, let's go ahead and get into this panel. We'll do a quick round of introductions. So I am Kurt Kemple, a developer advocate at Apollo GraphQL, and I have with me, let's see, I guess I'll go kind of in like a clockwise order, starting top left.

I have Phil Pluckthun, who is a principal engineer at Formidable and also on the core team of Urql and Styled Components. Next to him is Trevor Blades, who is a developer experience engineer at Apollo. Hey, how's it going? And then we have Vishwa Mehta, who is a dev rel at Hazura, so awesome. Thank you for joining. And we've got Scott Moss with us, content creator and CEO of TypeIO. How's it going, everybody? Thank you so much for joining us.

I'm Trevor. I've been using React for a long time and GraphQL for a little bit, a subsection of that time, but love both those technologies and excited to chat with everybody today. Awesome. Very cool. Thanks. Vish, what about you? Hey, everyone. Kurt, first of all, thank you so much for having me. I'm super excited to be here. I'm Vishwa Mehta, Vish for short, and I work on the dev rel team at Hazura. I've been building super cool things with React for quite some time, and I'm a huge GraphQL enthusiast. And yeah, super happy to be here. Awesome. So cool. And last but definitely not least, Scott. How's it going, everyone? That was a pretty good intro you gave me there, Kurt. But I would say for me, I've been working on GraphQL and frameworks and stuff since, I don't know, seems like forever. I've contributed in so many ways.

1. Introduction to React Summit Panel

Short description:

React Summit panel introduction with Kurt Kemple, Phil Pluckfin, Trevor Blatts, Vishwal Mehta, and Scott Moss.

This is the most powerful, and most powerful language available for free. It's the most powerful language in the world, and it's the most powerful language ever. It's the most powerful, and most powerful language ever. It's the most powerful language ever. It's the most powerful language ever.

Awesome. So thank you so much for joining us, everyone. I hope you're enjoying React Summit as much as I am. It's been a blast so far to see the talks and get to interact with everybody.

And yeah, without further ado, let's go ahead and get into this panel. We'll do a quick round of introduction. So I am Kurt Kemple, a developer advocate at Apollo GraphQL, and I have with me, let's see, I guess I'll go in like a clockwise order, starting top left. I have Phil Pluckfin who is principal engineer at Formidable and also on the core team of Urkel and Styled Components. Next to him is Trevor Blatts, who is a developer experience engineer at Apollo. Hey, how's it going? And then we have Vishwal Mehta, who is a dev rel at Hazara. So awesome, thank you for joining. And we've got Scott Moss with us, content creator and CEO of Type.io. How's it going everybody? Thank you so much for joining us. I'm Trevor, I've been using React for a long time, and GraphQL for a little bit, a subsection love both those technologies and excited to chat with everybody today. Awesome. Very cool. Thanks. Vish, what about you? Hey everyone. Great. First of all, thank you so much for having me. I'm super excited to be here. I'm Vishwal Mehta, Vish for short, and I work on the dev rel team at Hazara. I've been building super cool things with React for quite some time. I'm a huge GraphQL enthusiast and yeah, super happy to be here. Awesome.

2. Introduction to React and GraphQL Experiences

Short description:

I teach GraphQL and React and use them daily. Excited to see the technology progress. Let's dive into some questions. Phil discovered GraphQL organically through Twitter. Trevor learned about Apollo through a recruiter and fully embraced GraphQL after converting a React project. Vish stumbled upon GraphQL while tinkering with Gatsby and later immersed himself in the community at GraphQL Asia.

I teach GraphQL and React and stuff like that on platforms like front-end masters. And I also use GraphQL and React pretty much every single day. So just a big fan of the technology. And I just want to see it move even further.

Awesome. Yeah. Well, as you all can tell, we have a great lineup here, very diverse, different use cases and experiences with GraphQL and React. And as such, why don't we get into some questions so that we can get some more information and talk about React and GraphQL.

And so first up, I guess for this first question, I'll just go around in same order again, so Phil, you can kick it off if you want, and that is how were you introduced to the combination of React and GraphQL? And what was that experience like for you? Oh, I mean, how has anyone introduced to something like GraphQL or React? I would say it was very organic. Saw it on Twitter. And working at a consultancy that meant that a project that used GraphQL, followed shortly after me becoming aware of it. I mean, I'd also like to thank people like Wille Emanen and Mikael Svaneksson on Twitter, because even though I wasn't working GraphQL back then, when I met them at React Native EU actually, we talked a lot about GraphQL and made me really excited for it. Yeah. Yeah, that's awesome. I feel like a lot of people I can't remember how I found, I think Twitter as well. What about you, Trevor? How did you discover the combination of React and GraphQL? Well, honestly, the time that I, around the time that I learned about GraphQL, I wasn't super active on Twitter. I didn't, I didn't find out it, about it as organically as Phil did. I actually, I learned about Apollo through a recruiter reaching out to me and I was like, what is, what is Apollo? Oh, it's has to do with GraphQL. I've heard the word GraphQL before, but I had never really, like, I had no idea about what it, what it was. So. Um, the following weekend, I just like converted one of my, um, one of my old like side projects, it was like a skateboarding contest, statistical analysis project in React with like a custom REST API, all this like Redux craziness going on in the app. and I, uh, I converted that to like a Apollo app, um, like Apollo on the front end and the GraphQL API on the backend. And like after that weekend, I was like fully on the GraphQL train. Um, so that was my, my intro. Nice. And Vish, what did your story look like? Um, again, just like Phil said, how does one get introduced to something like React and GraphQL? So this is a little awkward and I don't always like to admit but I guess it's almost developers get introduced to new technologies. Um, so I've been using React for a few years now and, um, I only bumped into GraphQL in late 2018 when I was tinkering around with Gatsby since it has GraphQL baked into it. So I accidentally got into GraphQL without knowing, um, the beauty of it or what it brings to the table for you. Um, but it wasn't until 2019 that I properly started using GraphQL with React or, you know, learning GraphQL properly. Um, and then I volunteered at GraphQL Asia and met all these amazing people from the community, um, who were doing some awesome things with GraphQL.

3. Scott and Vish on the Power of React and GraphQL

Short description:

Scott discovered GraphQL through a meeting with Nick Schrock, the co-creator of GraphQL. He found it simple yet powerful when combined with React, simplifying complex problems. The ability to take data from an API call and directly display it on the page without the need for complex transformations was a game-changer. The removal of unnecessary code during the transition from REST and Redux to GraphQL was mind-boggling. Vish was impressed by the real-time capabilities offered by GraphQL clients and subscriptions.

And yeah, that's when I started playing around a bit more with it. Nice. Awesome. And what about you, Scott? What was kind of that moment that introduced you to that combination? Yeah, I was thinking about this. I was like, when did I really actually start hearing about using it and React, um, so let me see, I was using react for a while because I used to do like some work with the, the Angular team at Google, and we always just talk about like frameworks and stuff like that, so bracket was always on my radar, I think at the time I was, I was teaching at a bootcamp too. So I was always just like looking to see what was next. And then I think pretty sure I went to some event. I ended up meeting this guy named Nick Schrock, who was the co-creator of GraphQL and I remember him just kind of talking about this thing and I was like, what is this guy talking about? Uh, and like, you know, I go look at resources and there's really not a lot of stuff out there at the time. Uh, and then like fast forward a couple of weeks, couple of months later, and then boom, you know, there's this thing called GraphQL. So, uh, I was kind of all over it. I really thought it was amazing. Um, at the time I think Angular was like working on something like at script and they moved it to TypeScript. So like this whole type, safety type check thing on the API layers seemed really interesting. Um, and then it wasn't until I started working on some like small projects where I combine GraphQL and react together and I just realized just like how simple it was, but yet how powerful it was, and I knew I was in love, like I, it just, I wasn't going back from there. Yeah. I mean, that kind of leads into the next question, which was going to be like, you know, what was kind of your favorite thing about React and GraphQL together? What was it, you know, of those two, uh, the combination of technologies that you were just like, oh, I can't look back. Like this is different. It sounds like for you, like the simplicity, um, that it offers for development, but like also, you know, simplifying these complex, uh, problems was a pretty big one. Was there anything else that like you super enjoyed about it? Um, or was that probably the biggest benefit you found right away? I would say that was definitely the biggest one, because I always approach applications, you know, not only as an engineer that's building something, but as an instructor, someone that, you know, tries to have empathy towards someone who's learning something new. And I'm always looking, I'm always thinking like, you know, how quickly, how easily can someone pick this up and adopt this? You know, and what's, what is the, what are the difficult parts of this? And one thing about graph QL and react that really made it simple was that, you know, you do like less transformation code, you know, like. In the early days of react, there's just a lot of patterns people are doing. And, you know, at the end of the day, you just got to throw a kitchen sink of props in a component and maybe use two of them, uh, and you know, people get better at it, but like when graph QL came along, it's just like, wow, I could literally just take this data from API call and throw it on the page and not worrying about how to map it and filter it and produce it before I do it, you know, maybe even do some data checking on a friend who's just schemas are messed up. Like you can just forget about that. Uh, it just works. And I thought that was just extremely powerful because I saw a lot of my co-judges go out the window, uh, that was a good transform for the, for the view. Yeah, I'll never forget like the first time we really, uh, did some refactoring and, and moving away from like rest and Redux into graph QL and just the size of like how much code was being removed compared to how much was being added was a real pleasure. Yeah. It was real mind boggling. Uh, so followed up, I'll go and kind of in the reverse direction. Uh, Vish, what about for you, what would you say is kind of one of your favorite features of graph QL and react together as a combination? Well, going back to when I started with it, um, I think I was absolutely blown away by the fact that, you know, when you use, um, GraphQL clients and that support subscriptions, um, in return and gives you your application real time capabilities and those real-time capabilities.

4. Benefits of GraphQL with React

Short description:

With GraphQL clients handling API calls, state management, caching, and data fetching, React developers can focus on building their apps. The tight coupling between app views and data in GraphQL is a standout feature. It eliminates the need for complex transformation code like Redux loops and allows for a cohesive integration of app and data, similar to CSS and JavaScript. GraphQL's conventions and specifications make it down-to-earth and enable the creation of APIs tailored to specific front-end needs, resulting in magical data handling.

It was something that, you know, really appealed to me, stood out. Um, but just like apart from that, with all the GraphQL clients out there doing the heavy lifting for you as a React developer, I don't have to worry about, um, you know, how I'm making these API calls or about state management or caching or data fetching, which is something that's a hard problem to solve most of the times. So, um, yeah, stuff like that is using GraphQL with React.

For sure. And what about you Blades? What did you find to be that like cool thing that you couldn't let go of? Yeah, for me, the, the, the main thing that drew me in initially was, uh, how like you're able to couple your, your app views with the data that they require. Like it's, it's like, uh, it's like a really, really tight relationship between the data and the, um, and, and, and the app itself. Um, and out that that was nice. Uh, Scott was mentioning all of like the, the kind of the transformation code. I remember having to write these like complicated, uh, I forget what they're even called now, like Redux loop things. I was, I was using some, some, um, some fancy stuff to make, uh, like asynchronous API calls work with Redux. And it was, it was crazy, but it was that that was, that was just like the standard at the time. Um, but yeah, being able to like tightly couple my, my app and my data was really nice. I like, right before this, I was introduced to CSS and JavaScript and it had a similar promise. And, and like that, that kind of like feeling was still fresh in my mind. The idea that like, you don't have your style sheets over here and your app over here. You have. Your app and your styles are just like one cohesive thing. Um, and, and so I felt like it was like this giving me the same effect, but with my data. And I thought that was really nice.

Yeah. Yeah. Very cool. Uh, what about you, Phil? Um, what's one thing that kind of stands out to you among the rest? I mean, if I have to summarize already, what has been said, I like how down to earth GraphQL is kind of, I like that it's basically nothing new. It's just conventions and specifications and that really nice language, just tying it all together. And when I think back with, when I started using GraphQL, creating a back end for a front end for every single app you're building was already really common, but you're either stuck normalizing that data, denormalizing it, doing a bit of both writing. Really annoying. Redux code everywhere. Just dealing with your data in general, just being able to write a GraphQL API that just caters to that exact front end, being sure that that shape is documented and accessible, and then having clients be able to do all of these amazing things with normalizing data, because it's all built on convention, it's just really magical. It all comes together. Yeah, it really is.

5. State Management with GraphQL and React

Short description:

State management with GraphQL and React has evolved with the introduction of the new context API and hooks in React. Data from GraphQL flows down the entire component tree, reducing the need for additional state management libraries like Redux. The separation of data from the API and UI state allows for a more streamlined approach to state management.

And I feel like it's a great segue, like when we talk about data, data management, and normalization and stuff like this. And we also had a question from Discord, but I'm going to kind of spread it out a little bit to be more generic and not so focused, which is, and maybe Phil, you can lead, and we'll just go back around, what kind of solutions are out there, like how do you handle states between GraphQL and React? And what are some of your preferred ways of doing that, or what problem points do you hit, essentially?

Yeah, what does state management look like with GraphQL? It's an interesting one, right? Because I've always seen data from an API as completely separate from state that a UI would have. There are a couple of exceptions. In a couple of cases, form state can be pretty closely related to what your server sees, eventually. Or you could even preserve some state temporarily. So like, a form is half filled out, maybe you want to save that already.

For the most part, I think what's interesting is that kind of the bet from the React team on the new context API and hooks has just worked out perfectly with GraphQL. There are very few situations where I have to really, you know, get out a big hammer, like more bags of Redux anymore. Instead a lot of data will just flow down the entire elementary from GraphQL. And apart from that, a couple of small hooks here and there for state and maybe like, you know, some shared context is all I need. Yeah. Yeah, it's true. Really changes the story of like what state is, is on the client alone. And then yeah, how you manage it.

6. State Management with React and GraphQL

Short description:

State management with React and GraphQL has become easier, thanks to React state hooks and context. Apollo is a popular choice for state management. The React team has done a great job with hooks and the context API. Tools like SWR and React query are also recommended for interacting with APIs. The choice of state management depends on the framework and the complexity of the UI. Understanding the fundamentals of GraphQL is crucial for getting started.

What, what do you have to follow up with that, Trevor? How do you feel about state management with React and GraphQL? Has it gotten easier than with, you know, rest is its difference. What do you think?

Yeah. I mean, I think that, you know, I'll reiterate what Phil said. I think that the React like React state hooks and context really go a long way. but there are certain cases where I've ended up using like a state management, state management with Apollo using like client side resolvers or like augmenting certain types in my GraphQL schema based on something, some value that I have stored in local storage with like, type policies. and those, those can just be an extra little bit of of, like the cherry on top of an already pretty good state management story, I think in present day.

Yeah. Vis, you got to follow up to that. How you feel about state management? Go off of, Phil and Trevor's answers that, context and using context. And like, traditionally we used to use local state, but then context came along and, we have pretty good hooks and also like, I've been using Apollo for straight state management mostly. So, big Apollo champion here for that. Cool.

What about you, Scott? How do you feel about the state management story with React and GraphQL? Oh, well, I feel like there's just more options than ever before, which is a good thing, but for me personally, kind of like what everyone said here, like I think the React team has did a really good job with the hooks and the context API, and I don't really find myself reaching for anything beyond those. So like, in the ecosystem, you know, I like to use, some of my favorite tools to use when interacting with APIs are things that support the, you know, swr, so still while revalidate, so packages like SWR from Vercel or React query, like those types of packages that pretty much support anything async are just very phenomenal because you can kind of mix and match, you know, data from an API versus local state, you can do all different types of things there. So I kinda messed with that and that's been really good so far. You know, it's been phenomenal. And then like, it also really just depends on like what framework you use and like when you're needed to make an API call. Right? So like if you're taking advantage of things like next JS that, you know, if you're using some of their server side functions, which only happen on the server, you don't really need a caching solution, right? It's happening on a server that code gets eliminated, you just make a simple fetch call, but if you're building a traditional spot, then yeah, you might want to invest in some type of. You know, context based hook based or even Apollo to manage that state, depending on how intricate your UI is, you might have to, you know, go for something like Apollo. Cause, uh, kind of like Trevor said, you might have to do some more optimizations on local storage and stuff like that. Uh, but I would say most of the time, if you get your back end correct and it's, you know, if you're back into doing the heavy lifting of sending exactly what your front end needs, you can kind of just get by with just the context and the hooks. Yeah. And I do like, I want to follow up on that, that I do love seeing kind of a wider landscape of these clients, uh, from anything to like the more smaller, uh, wider focused, um, you know, react query up to like a fully managed client. Like, uh, you have Urkel as well, which is also a really good solution. Um, so it's just really cool to see such a wide variety. I would say it's a little bit about like, yeah, thinking about the needs for your app and then playing around with them and seeing which one's kind of outside of that once you have that narrowed down, fit your, you know, your development style, team style, all that fun stuff. Uh, next question I want to get to, just cause I want to make sure we get to this and I've seen a couple of questions about this pop up. So I'm going to, uh, uh, uh, jump to this one, which is if there was one resource that you could recommend to folks, uh, who are wanting to get started with GraphQL and React, what would it be and, uh, Vish I'm gonna start with you this time if that's cool. Sure. Um, just going off of, um, how my experience has been learning GraphQL, I'd really suggest that just getting your fundamentals right with GraphQL first is very important.

7. Resources for Learning GraphQL and React

Short description:

The GraphQL documentation is a great place to start. Priscillo's resources on GraphQL, including her book and Apollo guide, are highly recommended. Hasura also offers a fantastic learn course for React and GraphQL.

Um, so just the GraphQL documentation is a really great place to start. Um, but if docs is not your thing, then I absolutely love you Priscillo's resources on GraphQL. She has an amazing book learning GraphQL and, um, Peggy raises from Apollo. She also has this really cool guide. That's, um, that's called a front end developer's guide to, um, GraphQL and that also sets a primer for you and specifically, if you want to learn how to use react with GraphQL, then, um, I am going to risk being a bit biased here, but Hasura has really cool, um, has a really cool learn course, uh, for react. If you want to check that out.

8. Recommended GraphQL Resources

Short description:

If you're looking for GraphQL resources, Moon Highway and the Apollo full stack tutorial are great options. Querying for static data in a Gatsby site is a good way to understand GraphQL. For advanced users, reading the GraphQL specification is recommended. How to GraphQL is a comprehensive resource, and Hasura's docs are also highly regarded.

Yeah. That's awesome. Uh, and then I guess I'll go like counterclockwise around, uh, Trevor, what, uh, what would be that record, that resource that you would recommend? Uh, yeah, Vish Vish took my, uh, my learning GraphQL plug. Uh, I, I mean, I think you can't go wrong with, um, with even Alex there, even beyond that book, if you, if you just Google, um, Moon highway, they've got tons of great GraphQL resources.

Um, also the, the Apollo front end, um, or full stack tutorial, I should say, uh, is, is a good, it's relatively short. Shouldn't take a lot of time, but, but it should acquaint you with all the basics and actually I like, um, Vish mentioned that the, uh, you know, the way that she was introduced to GraphQL was through, through Gatsby. And I, I think that that's kind of a good way to just kind of like get some of those like GraphQL muscles, um, working, like, uh, understand what it's like querying for static data in your, in your Gatsby site, and then it might, it might get those, those gears turning a little bit. But, um, but yeah, I mean, there's, there's a few.

Awesome. Well, thank you. Yeah. Thank you for sharing. Phil, what about you? What, what resources would you recommend? I think none of these lists would be complete without mentioning how to GraphQL, which Prisma's put a lot of work into. They're working, I think, on a new version right now. So I guess you have to be aware of a couple of out of date information in there. But I guess if you're already advanced in GraphQL, I would also recommend just straight up reading the specification. And I know that sounds horrible, but I've read a lot of web specifications and love documents and it, sometimes they can be a bit confusing, but the GraphQL specs just really clear and pretty, pretty brief as well.

That's awesome. And what about you, Scott? What, what would you recommend? So many resources out there. I think it really just depends on your skill level and kind of where you are. I know me personally, I've definitely taken advantage of how to GraphQL a long time ago when Prisma put that together. So I know it's a really good resource, really impressive. But if you're like, you know, you're kind of the person that needs a guide and you need to see some context, you need to see a walkthrough, shameless plug here. Yeah. A good courses on a GraphQL to kind of break them down like front end GraphQL versus backend GraphQL. So you can kind of start with the front end, get your feet wet, and then see how the backend works. But also I think the Shura's docs and their guys are also really good. I actually referenced them a lot. I've met the Shura co-founders way back when they were starting, just a really impressive team there. So I think they have some really good resources as well.

9. Concluding Thoughts on Learning GraphQL

Short description:

When it comes to learning GraphQL, it depends on your style. Personally, I prefer reading the spec and diving into the code. However, everyone has their own approach. We appreciate your time and hope you found this discussion on React and GraphQL useful. Take care and thank you for joining us!

So I think this really depends on, on your style. You personally, I just read the spec. I'm just that person now where I'll just go, go to GitHub, open up a repo, just go to the code and be like, okay, that's how it works. But you know, I wasn't like that when I started out.

So yeah, however you feel. Yeah, for sure. And I believe that puts us at a time folks. It seems like a great place to wrap up. We appreciate you joining us. Hope you found this useful and learn something new about a React and GraphQL. Take care. Thanks for having us.

QnA

Discussion on React and GraphQL Introduction

Short description:

Scott's enthusiasm for GraphQL and React. Phil and Trevor's introduction to React and GraphQL.

So cool. And last but definitely not least, Scott. How's it going, everyone? That was a pretty good intro you gave me there, Kurt, but I would say for me, I've been working on GraphQL and frameworks and stuff since it seems like forever. I've contributed in so many ways. I teach GraphQL and React and stuff like that on platforms like frontendmasters. And I also use GraphQL and React pretty much every single day. So just a big fan of the technology. And I just want to see it move even further.

Well, as you all can tell, we have a great lineup here, very diverse, different use cases and experiences with GraphQL and React. And as such, why don't we get into some questions so that we can get some more information and yeah, talk about React and GraphQL.

And so first up, I guess for this first question, I'll just go around in the same order again. So, Phil, you can kick it off if you want. And that is, how were you introduced to the combination of React and GraphQL? And what was that experience like for you? I mean, how's anyone introduced to something like GraphQL or React. So I would say it was very organic, sold on Twitter and working at a consultancy that meant that the project that used GraphQL followed shortly after me becoming aware of it. I mean, I'd also like to thank people like Ville Imonen and Mikael Svraksda on Twitter, because even though I wasn't working with GraphQL back then when I met them at React Native for you, actually, we talked a lot about GraphQL and that made me really excited for it. Yeah. Yeah. Yeah. That's awesome. And that's something that I feel like a lot of people, I can't even remember how I found it. I think Twitter as well. What about you, Trevor? How did you discover the combination of React and GraphQL? Well, honestly, around the time that I learned about GraphQL I wasn't super active on Twitter. I didn't find out about it as organically as Ville did. I actually, I learned about Apollo through a recruiter reaching out to me and I was like, what is Apollo? Oh, it has to do with GraphQL. I've heard the word GraphQL before but I'd never really, I had no idea about what it was. So the following weekend I just converted one of my old side projects, it was like a skateboarding contest statistical analysis project in React with a custom REST API, all this redux craziness going on in the app. And I converted that to like a Apollo app, like Apollo on the front end and the GraphQL API on the back end. And like after that weekend I was like fully on the GraphQL train.

React and GraphQL Introduction Stories

Short description:

Vish and Scott's journey into React and GraphQL.

And I converted that to like a Apollo app, like Apollo on the front end and the GraphQL API on the back end. And like after that weekend I was like fully on the GraphQL train. So that was my intro. Nice.

And Vish, what did your story look like? Again, just like Phil said, how does one get introduced to something like React and GraphQL? So this is a little awkward and I don't always like to admit it, but I guess it's how most developers get introduced to new technologies. I've been using React for a few years now, and I only bumped into GraphQL in late 2018 when I was tinkering around with Gatsby, since it has GraphQL baked into it. So I accidentally got into GraphQL without knowing the beauty of it or what it brings to the table for you. But it wasn't until 2019 that I properly started using GraphQL with React or learning GraphQL properly, and then I volunteered at GraphQL Asia and met all these amazing people from the community, who were doing some awesome things with GraphQL. And yeah, that's when I started playing around a bit more with it. Nice. Awesome.

And what about you Scott? What was kind of that moment that introduced you to that combination? Yeah, I was thinking about this. I was like, wait, when did I really actually start hearing about GraphQL and using it and React? So, let me see, I was using React for a while because I used to do like some work with the Angular team at Google, and we used to always just talk about like frameworks and stuff like that. So Bracket was always on my radar. I think at the time I was teaching at a boot camp too. So I was always just like looking to see what was next. I think pretty soon I went to some event and I ended up meeting this guy named Nick Schrock, who's the co-creator of GraphQL. And I remember him just kind of talking about this thing. And I was like, what is this guy talking about? And like, you know, I go look at resources, and there's really not a lot of stuff out there at the time. And then like fast forward a couple of weeks, couple of months later, and then boom, you know, there's this thing called GraphQL. So I was kind of all over it. I really thought it was amazing. At the time, I think Angular was like working on something like Ads Script, and they moved it to TypeScript. So like this whole type, safety type check thing on the API layers seemed really interesting. And then it wasn't until I started working on some like small projects where I combine GraphQL and React together. And I just realized just like how simple it was, but yet how powerful it was, and I knew I was in love, like it's just, I wasn't going back from there. Yeah, I mean, that kind of leads into the next question, which was gonna be like, you know, what was kind of your favorite thing about React and GraphQL together? What was it, you know, of those two, the combination of those technologies that you were just like, oh, I can't look back. Like this is different. Sounds like for you, like the simplicity that it offers for development, but like also, you know, simplifying these complex problems was a pretty big one. Was there anything else that like you super enjoyed about it? Or was that probably the biggest benefit you found right away? I would say that was definitely the biggest one because I always approach applications, you know, not only as an engineer, that's building something, but as an instructor, someone that, you know, tries to have empathy towards someone who's learning something new.

Benefits of GraphQL and React Combination

Short description:

Exploring the simplicity of GraphQL and React. Real-time capabilities and automatic heavy lifting in GraphQL Clients. Tight coupling of app views and data with GraphQL.

And I'm always looking, I'm always thinking like, you know, how quickly, how easily can someone pick this up and adopt this, you know, and what's, what is the, what are the difficult parts of this, and one thing about GraphQL and React that really made it simple was that, you know, you do like less transformation code. Like in the early days of react, there's just a lot of patterns people are doing. And, you know, at the end of the day, you're just gonna throw a kitchen sink of props in that component and maybe use two of them. And, you know, people get better at it, but like when GraphQL came along, it's just like, wow, I can literally just take this data from API call and throw it on the page and not worrying about how to map it and filter it and produce it. Before I do it, you know, maybe even do some data checking on a front-end because your schemas are messed up. Like, you can just forget about that. It just works. And I thought that was just extremely powerful because I saw a lot of my code just go out the window that I was going to transform for the view. Yeah. I'll never forget, like the first time we really did some refactoring and moving away from like REST and Redux into GraphQL and just the size of like how much code was being removed compared to how much was being added was a real pleasure. Yeah. It was real mind boggling.

Vish, what about for you? What would you say is kind of one of your favorite features of GraphQL and React together as a combination? Well, going back to when I started with it, I think I was absolutely blown away by the fact that, you know, when you use GraphQL Clients and that support subscriptions in return, it gives you your application real-time capabilities. And those real-time capabilities, it was something that, you know, really appealed to me, stood out. But apart from that, with all the GraphQL Clients out there doing the heavy lifting for you, as a React developer, I don't have to worry about, you know, how I'm making these API calls or about state management or caching or data fetching, which is something that's a hard problem to solve most of the times. So, yeah, stuff like that it really appealed to me when I was using GraphQL with React. For sure.

Blades mentioned all of the transformation code. I remember having to write these complicated, I forget what they're even called now, like Redux loop things. I was using some, some, um, some fancy stuff to, to make, uh, like asynchronous API calls work with Redux. And, and it was, it was crazy, but it was, that was, that was just like the standard at the time. Um, but yeah, being able to like tightly couple my, my app and my data was really nice. I like right before this, I was introduced to CSS and JavaScript and it had a similar promise. And like that, that kind of like feeling was still fresh in my mind. The idea that like you don't have your style sheets over here and your app over here, you have your app and your styles are just like one cohesive thing. Um, and, and so I felt like it was like this giving me the same effects, but with my data. And I thought that was really nice.

State Management in React and GraphQL

Short description:

Exploring the cohesion of app styles and data. GraphQL's simplicity and convention over new concepts. State management in GraphQL and React with a focus on solutions and preferred approaches.

The idea that like you don't have your style sheets over here and your app over here, you have your app and your styles are just like one cohesive thing. Um, and, and so I felt like it was like this giving me the same effects, but with my data. And I thought that was really nice. Yeah.

Very cool. Uh, what about you, Phil? Um, what's one thing that kind of stands out to you among the rest. I mean, if I have to summarize already, what has been said, I like how down to earth GraphQL is kind of, I like that it's basically nothing new. It's just conventions and specifications in that really nice language, just tying it all together. And when I think back with, when I started using GraphQL, creating a backend for a front end for every single app you're building was already really common, but you're either stuck like a normalizing the data, denormalizing it, doing a bit of both, writing really annoying Redux code everywhere, just dealing with your data in general.

Just being able to write a GraphQL API that just caters to that exact front end, being sure that that shape is documented and accessible, and then having clients, you know, be able to do all of these amazing things with normalizing data because it's all built on convention, it's just really magical. It all comes together. Yeah. It really is. And I feel like it's a great segue, like when we talk about data, data management, and normalization, and stuff like this, we also had a question from Discord, but I'm going to kind of spread it out a little bit to be more generic and not so focused, which is, and maybe Phil, you can lead, and we'll just go back around what kind of solutions are out there, like how do you handle states between GraphQL and React, and what are some of your preferred ways of doing that, or what problem points do you hit, essentially?

State Management with Apollo and React

Short description:

State management with React and GraphQL focuses on the integration of React state hooks and context with GraphQL. The use of Apollo for state management and augmenting types in the GraphQL schema. The variety of options available in the ecosystem like SWR and react query for handling data from APIs and local state.

What does state management look like with GraphQL? It's an interesting one, right? Because I, I've always seen data from an API as completely separate from state that a UI would have. There are a couple of exceptions, and a couple of cases, form state can be pretty closely related to what your server sees, eventually. Or you could even, you know, preserve some state temporarily. So like, the form is half filled out. Maybe you want to save that already. But for the most part, I think what's interesting is that kind of the bet from the React team on the new context APIs and hooks has just worked out perfectly with GraphQL, there are very few situations where I have to really, you know, get out a big hammer, like more bags of Redux anymore. Instead, a lot of data was flowed down the entire element tree from GraphQL.

And apart from that, a couple of small hooks here and there for state and maybe like, you know, some shared context, it's all I need. Yeah. Yeah, it's true. It really changes the story of like what state is on the client alone. And then, yeah, how you manage it. What, what do you have to follow up with that Trevor? How, how do you feel about state management with React and GraphQL? Has it gotten easier than with, you know, rest? Is it different? What do you think? Yeah. I mean, I think that, you know, I'll reiterate what Phil said, I think that that React, like React state hooks and, and context really go a long way. But there are certain cases where I've ended up using like a state management, state management with Apollo, using like client side resolvers or like augmenting certain types in my GraphQL schema, based on something, some value that I have stored in local storage with, with like, type policies. And, and those, those can just be an extra little bit of, of, like the cherry on top of an already pretty good state management story, I think in present day.

Uh, Vish, you got a follow up to that? How you feel about state management? Go off of Phil and Trevor's answers that, um, context and using context. And like traditionally we used to use local state, but then context came along and, um, we have pretty good hooks. And also like I've been using Apollo for state state management mostly. So, um, big Apollo champion here for that. Cool. What about you, Scott? How do you feel about the state management story with React and GraphQL? Oh, I feel like there's just more options than ever before, which is a good thing. Um, but for me personally, probably everyone said here, like I think the REACT team has did a really good job with the hooks and the context API, and I don't really find myself reaching for anything beyond those. Uh, so like in the ecosystem, you know, I like to use some of my favorite tools to use when interacting with APIs are things that support the, you know, SWR, so still while we validate. So packages like SWR from Vercel or react query, uh, like those types of packages that pretty much support anything async, uh, are just very phenomenal because you can kind of mix and match, you know, data from an API versus local state. Uh, you can do all kinds of things there. Uh, so I kinda kind of mess with that. And that's been really good. Uh, so far, you know, it's been phenomenal.

State Management Insights and Learning Resources

Short description:

State management considerations in React and GraphQL including framework dependencies, backend optimizations, and varied client solutions. Recommendations for learning resources in GraphQL and React including official documentation, Priscilla's book, and Hasura's learning course.

And that's been really good. Uh, so far, you know, it's been phenomenal. And then like, it also really just depends on like what framework you use and like when you're needed to make an API call, right? So like if you're taking advantage of things like next to us that, you know, if you're using some of their server side functions, which only happen on the server, you don't really need a caching solution, right? It's happening on the server that code gets eliminated. You just make a simple fetch call. Uh, but if you're building a traditional spot, then yeah, you might want to invest in some type of, you know, context-based, hook-based, or even Apollo, uh, to manage that state. Depending on, you know, how intricate your UI is, you might have to, you know, go for something like Apollo. Cause uh, kind of like Trevor said, you might have to do some more optimizations on local storage and stuff like that. Uh, but I would say most of the time, if you get your backend correct, and it's, you know, for backends, doing the heavy lifting of sending exactly what your friend needs, you can kind of just get by with just a context and the hooks.

Yeah. And I do like, uh, want to follow up on that, that I do love seeing kind of a wider landscape of these clients, uh, from anything to like the more smaller, uh, wider focused, um, you know, React query up to like a fully managed client. Like, uh, you have Urql as well, which is also a really good solution. Um, so it's just really cool to see such a wide variety. I always say, it's a little bit about like, yeah, thinking about the needs for your app, but then playing around with them and seeing which one's kind of, uh, outside of that. Once you have that narrowed down, fit your, you know, your development style, team style, all that fun stuff.

Uh, next question I want to get to, just cause I want to make sure we get to this and I've seen a couple of questions about this pop up, so I'm going to, uh, uh, uh, jump to this one, which is if there was one resource that you could recommend to folks, uh, who are wanting to get started with GraphQL and React, what would it be? And, uh, Vishal, I'm going to start with you this time. If that's cool. Sure. Um, just going off of how my experience has been learning GraphQL, I really suggest that just getting your fundamentals right with GraphQL is just very important. Um, so just the GraphQL documentation is a really great place to start. Um, but if docs is not your thing, then I absolutely love you Priscilla's resources on GraphQL. She has an amazing book Learning GraphQL. And, um, Peggy raises, um, from Apollo. She also has this really cool guide that's, um, that's called a front-end developer's guide to, um, GraphQL. And that's, that also sets a primer for you. And specifically if you want to learn how to use React with GraphQL, then. Um, I am going to risk being a bit biased here, but Hasura has really cool, um, has a really cool learn course, uh, for React, if you want to check that Yeah, that's awesome. Uh, and then I guess I'll go like counterclockwise around, uh, Trevor. What, uh, what would be that record, that resource that you would recommend? Uh, yeah, Vish, Vish took my, uh, my learning GraphQL plug. Uh, I, I think you can't go wrong with, um, with even Alex there even beyond that book, if you, if you just Google, um, moon highway, they've got tons of great GraphQL resources. Um, also the, the Apollo front end, um, or full stack tutorial, I should say, uh, is, is a good it's relatively short and shouldn't take a lot of time, but, but it should acquaint you with all the basics and, and actually I, like, um, Vish mentioned that the, uh, You know, the way that, that she was introduced to GraphQL through, through Gatsby.

Resource Recommendations and Closing Remarks

Short description:

Exploring GraphQL functionalities within Gatsby, key resources like 'How to GraphQL' and reading the GraphQL specification. Diverse recommendations from Scott including 'Front-end Masters' courses and Assurance Docs. Focus on individual preferences for learning resources and wrapping up the discussion.

And I think that that's kind of a good way to just kind of like, get some of Like GraphQL muscles, um, working like, uh, understand what it's like querying for static data in your, in your Gatsby site. And then it might, might get those, those gears turning a little bit. But, um, but yeah, I mean, there's, there's a few. Awesome. Well, thank you. Yeah. Thank you for sharing, Phil.

What about you? What, what resources would you recommend? I think none of these lists will be complete without mentioning how to GraphQL, which Prisma has put a lot of work into, they're working, I think, on a new version right now. So I guess you have to be aware of a couple of out-of-date information in there. But I guess if you're already advanced and GraphQL would also recommend just straight up reading the specification. And I know that sounds horrible, but I've read a lot of web specifications and love documents, and it sometimes that can be a bit confusing, but the GraphQL specs just really clear and pretty, pretty brief as well.

That's awesome. And what about you, Scott? What would you recommend? So many resources out there. I think it really just depends on your skill level and kind of where you are. I know me personally, I've definitely taken advantage of how to GraphQL a long time ago when Prisma put that together. So I know it's a really good resource, really impressive. But if you're the person that needs a guide and you need to see some context, you need to see a walkthrough. Shameless plug here, but Front-end Masters have really good courses on GraphQL to kind of break them down, like front-end GraphQL versus back-end GraphQL so you can kind of start with the front-end, get your feet wet, and then see how the back-end works. But also, I think Assurance Docs and their guys are also really good. I actually referenced them a lot. I've met the Assurance Co-founders way back, when they were starting, just a really impressive team there. So I think they have some really good resources as well. So I think it just really depends on your style. Me personally, I just read the spec. I'm just that person now where I'll just go to GitHub, open up a repo, just go to the code. I'm like, okay, that's how it works. But you know, I wasn't like that when I started out. So yeah, however you feel.

Yeah, for sure. And I believe that puts us out of time, folks. It seems like a great place to wrap up. We appreciate you joining us. Hope you found this useful, and learned something new about React and GraphQL. Take care. Thanks for having us. Thank you.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

A Guide to React Rendering Behavior
React Advanced 2022React Advanced 2022
25 min
A Guide to React Rendering Behavior
Top Content
This transcription provides a brief guide to React rendering behavior. It explains the process of rendering, comparing new and old elements, and the importance of pure rendering without side effects. It also covers topics such as batching and double rendering, optimizing rendering and using context and Redux in React. Overall, it offers valuable insights for developers looking to understand and optimize React rendering.
Building Better Websites with Remix
React Summit Remote Edition 2021React Summit Remote Edition 2021
33 min
Building Better Websites with Remix
Top Content
Remix is a web framework built on React Router that focuses on web fundamentals, accessibility, performance, and flexibility. It delivers real HTML and SEO benefits, and allows for automatic updating of meta tags and styles. It provides features like login functionality, session management, and error handling. Remix is a server-rendered framework that can enhance sites with JavaScript but doesn't require it for basic functionality. It aims to create quality HTML-driven documents and is flexible for use with different web technologies and stacks.
React Compiler - Understanding Idiomatic React (React Forget)
React Advanced 2023React Advanced 2023
33 min
React Compiler - Understanding Idiomatic React (React Forget)
Top Content
Watch video: React Compiler - Understanding Idiomatic React (React Forget)
Joe Savona
Mofei Zhang
2 authors
The Talk discusses React Forget, a compiler built at Meta that aims to optimize client-side React development. It explores the use of memoization to improve performance and the vision of Forget to automatically determine dependencies at build time. Forget is named with an F-word pun and has the potential to optimize server builds and enable dead code elimination. The team plans to make Forget open-source and is focused on ensuring its quality before release.
Using useEffect Effectively
React Advanced 2022React Advanced 2022
30 min
Using useEffect Effectively
Top Content
Today's Talk explores the use of the useEffect hook in React development, covering topics such as fetching data, handling race conditions and cleanup, and optimizing performance. It also discusses the correct use of useEffect in React 18, the distinction between Activity Effects and Action Effects, and the potential misuse of useEffect. The Talk highlights the benefits of using useQuery or SWR for data fetching, the problems with using useEffect for initializing global singletons, and the use of state machines for handling effects. The speaker also recommends exploring the beta React docs and using tools like the stately.ai editor for visualizing state machines.
Routing in React 18 and Beyond
React Summit 2022React Summit 2022
20 min
Routing in React 18 and Beyond
Top Content
Routing in React 18 brings a native app-like user experience and allows applications to transition between different environments. React Router and Next.js have different approaches to routing, with React Router using component-based routing and Next.js using file system-based routing. React server components provide the primitives to address the disadvantages of multipage applications while maintaining the same user experience. Improving navigation and routing in React involves including loading UI, pre-rendering parts of the screen, and using server components for more performant experiences. Next.js and Remix are moving towards a converging solution by combining component-based routing with file system routing.
React Concurrency, Explained
React Summit 2023React Summit 2023
23 min
React Concurrency, Explained
Top Content
Watch video: React Concurrency, Explained
React 18's concurrent rendering, specifically the useTransition hook, optimizes app performance by allowing non-urgent updates to be processed without freezing the UI. However, there are drawbacks such as longer processing time for non-urgent updates and increased CPU usage. The useTransition hook works similarly to throttling or bouncing, making it useful for addressing performance issues caused by multiple small components. Libraries like React Query may require the use of alternative APIs to handle urgent and non-urgent updates effectively.

Workshops on related topic

React Performance Debugging Masterclass
React Summit 2023React Summit 2023
170 min
React Performance Debugging Masterclass
Top Content
Featured Workshop
Ivan Akulov
Ivan Akulov
Ivan’s first attempts at performance debugging were chaotic. He would see a slow interaction, try a random optimization, see that it didn't help, and keep trying other optimizations until he found the right one (or gave up).
Back then, Ivan didn’t know how to use performance devtools well. He would do a recording in Chrome DevTools or React Profiler, poke around it, try clicking random things, and then close it in frustration a few minutes later. Now, Ivan knows exactly where and what to look for. And in this workshop, Ivan will teach you that too.
Here’s how this is going to work. We’ll take a slow app → debug it (using tools like Chrome DevTools, React Profiler, and why-did-you-render) → pinpoint the bottleneck → and then repeat, several times more. We won’t talk about the solutions (in 90% of the cases, it’s just the ol’ regular useMemo() or memo()). But we’ll talk about everything that comes before – and learn how to analyze any React performance problem, step by step.
(Note: This workshop is best suited for engineers who are already familiar with how useMemo() and memo() work – but want to get better at using the performance tools around React. Also, we’ll be covering interaction performance, not load speed, so you won’t hear a word about Lighthouse 🤐)
Next.js for React.js Developers
React Day Berlin 2023React Day Berlin 2023
157 min
Next.js for React.js Developers
Top Content
Featured WorkshopFree
Adrian Hajdin
Adrian Hajdin
In this advanced Next.js workshop, we will delve into key concepts and techniques that empower React.js developers to harness the full potential of Next.js. We will explore advanced topics and hands-on practices, equipping you with the skills needed to build high-performance web applications and make informed architectural decisions.
By the end of this workshop, you will be able to:1. Understand the benefits of React Server Components and their role in building interactive, server-rendered React applications.2. Differentiate between Edge and Node.js runtime in Next.js and know when to use each based on your project's requirements.3. Explore advanced Server-Side Rendering (SSR) techniques, including streaming, parallel vs. sequential fetching, and data synchronization.4. Implement caching strategies for enhanced performance and reduced server load in Next.js applications.5. Utilize React Actions to handle complex server mutation.6. Optimize your Next.js applications for SEO, social sharing, and overall performance to improve discoverability and user engagement.
Concurrent Rendering Adventures in React 18
React Advanced 2021React Advanced 2021
132 min
Concurrent Rendering Adventures in React 18
Top Content
Featured Workshop
Maurice de Beijer
Maurice de Beijer
With the release of React 18 we finally get the long awaited concurrent rendering. But how is that going to affect your application? What are the benefits of concurrent rendering in React? What do you need to do to switch to concurrent rendering when you upgrade to React 18? And what if you don’t want or can’t use concurrent rendering yet?

There are some behavior changes you need to be aware of! In this workshop we will cover all of those subjects and more.

Join me with your laptop in this interactive workshop. You will see how easy it is to switch to concurrent rendering in your React application. You will learn all about concurrent rendering, SuspenseList, the startTransition API and more.
React Hooks Tips Only the Pros Know
React Summit Remote Edition 2021React Summit Remote Edition 2021
177 min
React Hooks Tips Only the Pros Know
Top Content
Featured Workshop
Maurice de Beijer
Maurice de Beijer
The addition of the hooks API to React was quite a major change. Before hooks most components had to be class based. Now, with hooks, these are often much simpler functional components. Hooks can be really simple to use. Almost deceptively simple. Because there are still plenty of ways you can mess up with hooks. And it often turns out there are many ways where you can improve your components a better understanding of how each React hook can be used.You will learn all about the pros and cons of the various hooks. You will learn when to use useState() versus useReducer(). We will look at using useContext() efficiently. You will see when to use useLayoutEffect() and when useEffect() is better.
Introducing FlashList: Let's build a performant React Native list all together
React Advanced 2022React Advanced 2022
81 min
Introducing FlashList: Let's build a performant React Native list all together
Top Content
Featured Workshop
David Cortés Fulla
Marek Fořt
Talha Naqvi
3 authors
In this workshop you’ll learn why we created FlashList at Shopify and how you can use it in your code today. We will show you how to take a list that is not performant in FlatList and make it performant using FlashList with minimum effort. We will use tools like Flipper, our own benchmarking code, and teach you how the FlashList API can cover more complex use cases and still keep a top-notch performance.You will know:- Quick presentation about what FlashList, why we built, etc.- Migrating from FlatList to FlashList- Teaching how to write a performant list- Utilizing the tools provided by FlashList library (mainly the useBenchmark hook)- Using the Flipper plugins (flame graph, our lists profiler, UI & JS FPS profiler, etc.)- Optimizing performance of FlashList by using more advanced props like `getType`- 5-6 sample tasks where we’ll uncover and fix issues together- Q&A with Shopify team
React, TypeScript, and TDD
React Advanced 2021React Advanced 2021
174 min
React, TypeScript, and TDD
Top Content
Featured Workshop
Paul Everitt
Paul Everitt
ReactJS is wildly popular and thus wildly supported. TypeScript is increasingly popular, and thus increasingly supported.

The two together? Not as much. Given that they both change quickly, it's hard to find accurate learning materials.

React+TypeScript, with JetBrains IDEs? That three-part combination is the topic of this series. We'll show a little about a lot. Meaning, the key steps to getting productive, in the IDE, for React projects using TypeScript. Along the way we'll show test-driven development and emphasize tips-and-tricks in the IDE.