A hands-on guide to help you develop skills and confidence in building and structuring React applications in a well-organized way using the best tools in the React ecosystem Key Features Discover solutions to complex problems faced while creating production-ready apps with React Develop scalable React applications with Next.js using a step-by-step approach from analysis to deployment Get an overview of the React ecosystem and identify the best tools to meet your app requirements Book Description Building large-scale applications in production can be overwhelming with the amount of tooling choices and lack of cohesive resources. To address these challenges, this hands-on guide covers best practices and web application development examples to help you build enterprise-ready applications with React in no time. Throughout the book, you'll work through a real-life practical example that demonstrates all the concepts covered. You'll learn to build modern frontend applications―built from scratch and ready for production. Starting with an overview of the React ecosystem, the book will guide you in identifying the tools available to solve complex development challenges. You'll then advance to building APIs, components, and pages to form a complete frontend app. The book will also share best practices for testing, securing, and packaging your app in a structured way before finally deploying your app with scalability in mind. By the end of the book, you'll be able to efficiently build production-ready applications by following industry practices and expert tips. What you will learn Use a good project structure that scales well with your application Create beautiful UIs with Chakra UI and emotion Configure a base Next.js app with static code analysis and Git hooks Learn to mock API endpoints for prototyping, local development and testing Choose an optimal rendering strategy in Next.js based on the page needs Learn to choose the best state management solution for given problem Write unit tests, integration tests and e2e tests in your React Application Deploy your React applications on Vercel Who this book is for This book is for intermediate-level web developers who already have a solid understanding of JavaScript, React, and web development in general and want to build large-scale React applications effectively. Beginner-level TypeScript experience, along with JavaScript and React, will be beneficial. Table of Contents Understanding the Architecture of React Applications Setup and Project Structure Overview Building and Documenting Components Building and Configuring Pages Mocking the API Integrating the API into the Application Implementing User Authentication and Global Notifications Testing Configuring CI/CD for Testing and Deployment Going Beyond A hands-on guide to help you develop skills and confidence in building and structuring React applications in a well-organized way using the best tools in the React ecosystem Key Features* Discover solutions to complex problems faced while creating production-ready apps with React * Develop scalable React applications with Next.js using a step-by-step approach from analysis to deployment * Get an overview of the React ecosystem and identify the best tools to meet your app requirements Book DescriptionBuilding large-scale applications in production can be overwhelming with the amount of tooling choices and lack of cohesive resources. To address these challenges, this hands-on guide covers best practices and web application development examples to help you build enterprise-ready applications with React in no time. Throughout the book, you'll work through a real-life practical example that demonstrates all the concepts covered. You'll learn to build modern frontend applications―built from scratch and ready for production. Starting with an overview of the React ecosystem, the book will guide you in identifying the tools available to solve complex development challenges. You'll then advance to building APIs, components, and pages to form a complete frontend app. The book will also share best practices for testing, securing, and packaging your app in a structured way before finally deploying your app with scalability in mind. By the end of the book, you'll be able to efficiently build production-ready applications by following industry practices and expert tips. What you will learn* Use a good project structure that scales well with your application * Create beautiful UIs with Chakra UI and emotion * Configure a base Next.js app with static code analysis and Git hooks * Learn to mock API endpoints for prototyping, local development and testing * Choose an optimal rendering strategy in Next.js based on the page needs * Learn to choose the best state management solution for given problem * Write unit tests, integration tests and e2e tests in your React Application * Deploy your React applications on Vercel Who this book is forThis book is for intermediate-level web developers who already have a solid understanding of JavaScript, React, and web development in general and want to build large-scale React applications effectively. Beginner-level TypeScript experience, along with JavaScript and React, will be beneficial. Table of Contents1. Understanding the Architecture of React Applications 2. Setup and Project Structure Overview 3. Building and Documenting Components 4. Building and Configuring Pages 5. Mocking the API 6. Integrating the API into the Application 7. Implementing User Authentication and Global Notifications 8. Testing 9. Configuring CI/CD for Testing and Deployment 10. Going Beyond Learn test-driven and behavior-driven development techniques that will give you greater confidence when building React applicationsKey FeaturesExplore the TDD process, how it works, and why it will help you write maintainable React appsDevelop a component testing framework from scratch, which will help you understand the mechanics of good unit testingReduce complexity by using unit tests and end-to-end acceptance tests to drive the design of your appsBook DescriptionTest-driven development (TDD) is a programming workflow that helps you build your apps by specifying behavior as automated tests. The TDD workflow future-proofs apps so that they can be modified without fear of breaking existing functionality. Another benefit of TDD is that it helps software development teams communicate their intentions more clearly, by way of test specifications.This book teaches you how to apply TDD when building React apps. You'll create a sample app using the same React libraries and tools that professional React developers use, such as Jest, React Router, Redux, Relay (GraphQL), Cucumber, and Puppeteer. The TDD workflow is supported by various testing techniques and patterns, which are useful even if you're not following the TDD process. This book covers these techniques by walking you through the creation of a component test framework. You'll learn automated testing theory which will help you work with any of the test libraries that are in standard usage today, such as React Testing Library. This second edition has been revised with a stronger focus on concise code examples and has been fully updated for React 18.By the end of this TDD book, you'll be able to use React, Redux, and GraphQL to develop robust web apps.What you will learnBuild test-driven applications using React 18 and JestUnderstand techniques and patterns for writing great automated testsUse test doubles and mocks effectivelyTest-drive browser APIs, including the Fetch API and the WebSocket APIIntegrate with libraries such as React Router, Redux, and Relay (GraphQL)Use Cucumber.js and Puppeteer to build Behaviour- Driven Development (BDD) style tests for your applicationsBuild and test async Redux code using redux-saga and expect-reduxWho this book is forThis book is for frontend developers who are looking to improve their testing practices and increase the quality and maintainability of their applications. To make the most of this book, you'll need knowledge of the JavaScript programming language. A hands-on guide to help you develop skills and confidence in building and structuring React applications in a well-organized way using the best tools in the React 18 ecosystemKey FeaturesDiscover solutions to complex problems faced while creating production-ready apps with ReactDevelop scalable React applications with Next.js using a step-by-step approach from analysis to deploymentGet an overview of the React ecosystem and identify the best tools to meet your app requirementsBook DescriptionBuilding large-scale applications in production can be overwhelming with the amount of tooling choices and lack of cohesive resources. To address these challenges, this hands-on guide covers best practices and web application development examples to help you build enterprise-ready applications with React in no time. Throughout the book, you'll work through a real-life practical example that demonstrates all the concepts covered. You'll learn to build modern frontend applications—built from scratch and ready for production. Starting with an overview of the React ecosystem, the book will guide you in identifying the tools available to solve complex development challenges. You'll then advance to building APIs, components, and pages to form a complete frontend app. The book will also share best practices for testing, securing, and packaging your app in a structured way before finally deploying your app with scalability in mind. By the end of the book, you'll be able to efficiently build production-ready applications by following industry practices and expert tips.What you will learnUse a good project structure that scales well with your applicationCreate beautiful UIs with Chakra UI and emotionConfigure a base Next.js app with static code analysis and Git hooksLearn to mock API endpoints for prototyping, local development and testingChoose an optimal rendering strategy in Next.js based on the page needsLearn to choose the best state management solution for given problemWrite unit tests, integration tests and e2e tests in your React ApplicationDeploy your React applications on VercelWho this book is forThis book is for intermediate-level web developers who already have a solid understanding of JavaScript, React, and web development in general and want to build large-scale React applications effectively. Beginner-level TypeScript experience, along with JavaScript and React, will be beneficial. Explore global state management and select the best library for your applicationKey FeaturesUnderstand the essential concepts and features of micro state managementDiscover solutions to common problems faced while implementing micro state managementExplore the different libraries, their coding style, and the optimum approach to rendering optimizationBook DescriptionState management is one of the most complex concepts in React. Traditionally, developers have used monolithic state management solutions. Thanks to React Hooks, micro state management is something tuned for moving your application from a monolith to a microservice.This book provides a hands-on approach to the implementation of micro state management that will have you up and running and productive in no time. You'll learn basic patterns for state management in React and understand how to overcome the challenges encountered when you need to make the state global. Later chapters will show you how slicing a state into pieces is the way to overcome limitations. Using hooks, you'll see how you can easily reuse logic and have several solutions for specific domains, such as form state and server cache state. Finally, you'll explore how to use libraries such as Zustand, Jotai, and Valtio to organize state and manage development efficiently.By the end of this React book, you'll have learned how to choose the right global state management solution for your app requirement.What you will learnUnderstand micro state management and how you can deal with global stateBuild libraries using micro state management along with React HooksDiscover how micro approaches are easy using React HooksUnderstand the difference between component state and module stateExplore several approaches for implementing a global stateBecome well-versed with concrete examples and libraries such as Zustand, Jotai, and ValtioWho this book is forIf you're a React developer dealing with complex global state management solutions and want to learn how to choose the best alternative based on your requirements, this book is for you. Basic knowledge of JavaScript programming, React Hooks and TypeScript is assumed. Test-driven development (TDD) is a programming workflow that helps you build your apps by specifying behavior as automated tests. The TDD workflow future-proofs apps so that they can be modified without fear of breaking existing functionality. Another benefit of TDD is that it helps software development teams communicate their intentions more clearly, by way of test specifications. This book teaches you how to apply TDD when building React apps. You'll create a sample app using the same React libraries and tools that professional React developers use, such as Jest, React Router, Redux, Relay (GraphQL), Cucumber, and Puppeteer. The TDD workflow is supported by various testing techniques and patterns, which are useful even if you're not following the TDD process. This book covers these techniques by walking you through the creation of a component test framework. You'll learn automated testing theory which will help you work with any of the test libraries that are in standard usage today, such as React Testing Library. This second edition has been revised with a stronger focus on concise code examples and has been fully updated for React 18. By the end of this TDD book, you'll be able to use React, Redux, and GraphQL to develop robust web apps With this book, you'll learn how to apply the test-driven development workflow when building React applications. You'll focus on techniques and patterns for writing great automated tests with the Jest test framework. These tests will help you build simple, elegant React codebases that easily adapt to future modifications. Modern React Applications Architecture in Action helps you explore the capabilities of the React library and its ecosystem to create web applications with this book following a hands-on approach to learning the associated methodologies and their implementation in building an enterprise web application. In this book, you'll explore the capabilities of micro state management and implement them in your app for efficient development management. As you progress, you'll gain the confidence to use global state in React to avoid unnecessary re-renders.