This Apress imprint is published by the registered company APress Media, LLC part of Springer Nature.
The registered company address is: 1 New York Plaza, New York, NY 10004, U.S.A.
I dedicate this book to my wife. This book is a fruit of our labor for all the years of sacrifices we both made to get to where we are today. I will never forget that everything I have now would not be possible without you, our families, and friends back home in the Philippines. And to my Inmeta managers here in Norway, I will always be grateful to all of you for believing in me.
—Devlin
***
To my husband. I couldn’t have done this without you. You make me want to become a better version of myself. So here’s to a lifetime of an exciting roller-coaster ride with you. Jeg elsker deg, beber.
To my dad, Ruben, and my mom, Nitz, I love and miss you more than I could ever say. To my brother, RJ, and my sisters, Yang, Rina, Bang, and Cheng, who I know will always have my back and vice versa! Our constant group chats and video calls from across the globe help me keep my sanity! And of course, I gotta give high fives to my brothers-in-law and sisters-in-law for putting up with them!
To my nieces and nephews – Robyn, Isaac, Ynah, Elijah, Sam, Eren, Riley, Kairo, Mathieu, and Raikko – you light up my life and give me the best medicine in the world!
—Ruby
What to expect from this book?
First of all, this book is for developers who already have a bit of experience in front-end development or, at the very least, have dabbled a bit in React and are now looking to find a reliable and practical guidebook on building enterprise-level React applications.
In the first two chapters of this book, we will go through an overview of some key React concepts, why React is a vital library to add to your arsenal of software development weapons. In the second chapter, we will briefly discuss what Node.js is and how to run the Node Package Manager (NPM), the popular back-end framework we use to work with React.
But if you’re already familiar with the essential React concepts, you might want to jump right away to Chapter 3, where we have the starting point for building our React project. This book will cover some standard and important React APIs, how to navigate React Router, how to manage your Store, and so many other exciting things!
Suffice it to say that we expect you to have experience or proficiency in the following programming tools: HyperText Markup Language (HTML), Cascading Style Sheets (CSS), JavaScript (JS) ES2015+, and, of course, React. Some knowledge of TypeScript (TS) would be beneficial also because TypeScript is increasingly becoming the preferred language for building enterprise apps.
We will be using TS, and as long as you already know ES6 or the modern JavaScript, no need to worry if you’re not that familiar yet with TS because we will be explaining it as we go along. We promise you that in no time, you’ll see the benefits of writing enterprise-level apps in TypeScript, and you’ll be developing in no other way!
The book’s structure is designed as a practical building guide for you and your team to developing real-world enterprise applications. Even if in the future some new shiny tools will come up (as is to be expected in this fast-changing technological age), you can still apply the technical concepts and guidelines that we’ve painstakingly put together in this book. We even devoted a section on how you can reuse your React skills in other platforms and frameworks.
We will be using TypeScript for building React enterprise applications and Redux Toolkit (RTK) for managing complex application states.
But before we get right into it, let’s just briefly explain or define the tools that we will use here:
TypeScript (TS): It is defined as a strict syntactical superset of JavaScript (JS). Codes written in TS are automatically translated into JS. The essential features of TS are its static typing and object-oriented programming based on classes.
Redux: Its official website defines it as a “predictable state container for JavaScript apps.” Redux is typically used for application state management. Other state management solutions are Easy Peasy, MobX, and Recoil.
Redux Toolkit: It is a package library developed as a standard guide to write and simplify the configurations of Redux applications, thereby speeding up your development process. It can be added to the start of a new project or an existing project.
We will go into the step-by-step process that you can follow along and get your hands dirty from the start. After all, we all know, as developers, that we learn much faster by doing it.
is a Filipino full-stack cloud engineer (web, mobile, back-end, cloud services developer) based in Norway. He is a Microsoft MVP, an Auth0 Ambassador, a corporate on-site trainer for the past four years, a Microsoft Certified Trainer, an international conference speaker, and a senior consultant at Inmeta. He loves going to universities and user groups after office hours or during the weekend to share his expertise. If he is not coding or speaking at conferences, he is probably traveling around the world with his wife, trying local foods in different cities. You can find him on Twitter at @DevlinDuldulao.
is a serendipitous Filipina React.js developer with a wanderlust heart but currently living in Norway. She is based in Oslo, Norway, with about three years of experience as a developer and over ten years as a content writer/manager. She believes that one can still teach old dogs new tricks, even coding.
has a background in mechanical engineering from the University of Ibadan, Nigeria, and has been a front-end developer for over three years working on both web and mobile technologies. He also has experience as a technical author, writer, and reviewer. He enjoys programming for the Web, and occasionally, you can also find him playing soccer. He was born in Benin City and is currently based in Lagos, Nigeria.
18.222.67.251