Code Generation in React with RTK Query
In this article, the author explores the use of code generation as a powerful approach to generate the API layer of a React application. By using code generation, developers can create the necessary methods to call APIs and generate the required types for requests and responses. The benefit of code generation over AI tooling, such as GitHub Copilot, is that it removes the need for manual review, testing, and debugging of suggestions. With code generation, developers can skip worrying about the API layer altogether.
The tool used in this article is @rtk-query/codegen-openapi, which is part of Redux Toolkit (RTK). RTK Query simplifies the usage of Redux and eliminates boilerplate code. It integrates API requests with Redux state, reducing the need to write and maintain actions, reducers, and selectors. RTK Query also provides intelligent caching behavior and automatic re-requesting of data after a mutating request has invalidated the local cache. The hooks exposed by RTK Query work seamlessly with React, offering an easy-to-use interface for API integration within React components.
Developers interested in implementing code generation in their React applications can refer to the provided example repository, which includes a small FastAPI server and React application.
Overall, this article highlights the benefits of code generation for generating the API layer in React applications and introduces the @rtk-query/codegen-openapi tool as a valuable resource for developers.