Book Image

Full-Stack React, TypeScript, and Node

By : David Choi
2 (1)
Book Image

Full-Stack React, TypeScript, and Node

2 (1)
By: David Choi

Overview of this book

React sets the standard for building high-performance client-side web apps. Node.js is a scalable application server that is used in thousands of websites, while GraphQL is becoming the standard way for large websites to provide data and services to their users. Together, these technologies, when reinforced with the capabilities of TypeScript, provide a cutting-edge stack for complete web application development. This book takes a hands-on approach to implementing modern web technologies and the associated methodologies for building full-stack apps. You’ll begin by gaining a strong understanding of TypeScript and how to use it to build high-quality web apps. The chapters that follow delve into client-side development with React using the new Hooks API and Redux. Next, you’ll get to grips with server-side development with Express, including authentication with Redis-based sessions and accessing databases with TypeORM. The book will then show you how to use Apollo GraphQL to build web services for your full-stack app. Later, you’ll learn how to build GraphQL schemas and integrate them with React using Hooks. Finally, you’ll focus on how to deploy your application onto an NGINX server using the AWS cloud. By the end of this book, you’ll be able to build and deploy complete high-performance web applications using React, Node, and GraphQL.
Table of Contents (22 chapters)
Section 1:Understanding TypeScript and How It Can Improve Your JavaScript
Section 2: Learning Single-Page Application Development Using React
Section 3: Understanding Web Service Development Using Express and GraphQL
Chapter 16: Adding a GraphQL Schema – Part II

Setting up Ubuntu Linux on AWS Cloud

In this section, we'll learn about selecting and setting up an Ubuntu Linux server on an AWS VM. I'll assume you know how to create an AWS account already. The process is fairly straightforward, as an existing Ubuntu Linux image will already be available to use. Let's start:

  1. After we log in, the screenshot shown here will be the current AWS portal. Note that these screens change frequently, so your view may be different:

    Figure 17.1 – AWS Portal home

  2. We can see the Launch a virtual machine link. Select it and you will get to this next screen:

    Figure 17.2 – Initial VM screen

    Let's select the image for Ubuntu 20.04 LTS. This is the latest Long Term Support version of Ubuntu.

  3. Once selected, you should see the following screen:

    Figure 17.3 – VM instance type selector

    I have gone ahead and selected a lower-end image with 1 vCPU and 2 GB of memory. Note that EBS is an AWS-specific performance optimization...