Create full stack applications using JavaScript and React.js. This project-based, 12 hour course takes you through the development of complex web experiences using JavaScript and React.js.
Learn how to use and combine different parts of the JavaScript and React ecosystems to turn your ideas into dynamic, fully-fledged applications.
In this course, Sam Nixon teaches you the skills needed to make full stack Javascript applications using React, Node.js, Vite, Typescript and databases like AWS, MySQL and MongoDB. You'll build your own frontends and backends, construct APIs, authenticate users into your applications, and persist data in databases.
In our first project, we’ll create Brut - a brutalistic web music player that uses the Spotify API. Through Brut we’ll explore Typescript as a new way of writing JavaScript, Axios and authentication for accessing APIs, Styled Components for our CSS, and React Select as a way of creating dropdown components. Additionally, we will quickly review some of the key elements of JavaScript and React.js that we’ll be using throughout the rest of this course.
Welcome to Introduction to Full Stack Javascript!
Welcome to Chapter 1, our first project! Let’s see what’s in store in this part of the course.
What are the options available to us when we want to quickly spin up a React.js application, and how do we choose one that will work for us?
In our second project, we’ll be building a full stack, wallet-style notes app that will allows us to store text. This project is a big undertaking, so we’ll split the task into two parts. In part A, we’ll use starter code to get a head start on the frontend of our application then experiment with animation using react-spring, forms using Formik and we’ll explore how we can organise our workflow and code to make it easier for others to work with us.
Welcome to Chapter 2! Let’s see what’s in store in this part of the course.
What do we look for when we’re developing a full stack application? How do we critically review a design from an engineering point of view?
This time around, some code has been written for us so we can dive into the juicier elements of designing our Notes app. Let’s take a look around to familiarise ourselves.
Picking up where we left off at the end of Chapter 2A, in this Chapter we’ll finish our wallet-style notes app. We’ll build a backend that persists data, stores it in a cloud database and exposes that data via an API. To do that, we’ll be learning about MongoDB, Node.js and Express. Then we’ll connect our frontend and backend together using custom React hooks to create a fully-fledged notes app.
We start the backend section of this chapter with a blank page! But where do we begin? What do we need to decide upon at this point?
Let’s get started with Node and Express - a ubiquitous combination that you’ll often find in full stack JavaScript applications.
Our server files aren’t really cleanly separated and may soon get fairly bloated. One common pattern may help us here.
In the final project of this course, we’ll build Careful - an application that lets healthcare workers view detailed records of the patients they are looking after. We’ll pull data from an Amazon Web Services (AWS) database, build out a Node.js backend and connect it to that database using Sequelize, then dive into building our own authenticated API to protect that data. Last but not least, we’ll refactor our code to use the Zustand state management library to ensure that the applications state is clear and well-handled.
Welcome to Chapter 3, the final project! Let’s see what’s in store in this part of the course.
Where do we start when we approach an application that has been written by someone else and when our domain has been constrained? How do we make sure we have an impact on the areas that we’re meant to be concerned about, without neglecting areas where we feel we can make improvements?
What are the key pieces we’ll need to think about when interacting with an AWS database? What is it written in? How do you access it?
Sam is a Full Stack Engineer and Product Manager who has built products that reach millions and taught web development and product management to people around the world. In this course, he will show you the wide world of React and JavaScript and build your confidence with making complex applications.