1. Overview & Setup

🚀 The Catstronauts are lifting off to production!

Welcome back! 👋 Throughout the Lift-off series, we built a fully functional full-stack app using GraphQL.

So what's missing? For now, everything works on our local machine. If we want all the aspiring catstronauts in the world to use our app, we need to deploy it to production! 🚀

Quick disclaimer: this course is not an exhaustive walkthrough of all the ways we could get our app to production. There are just too many options, from server instances to , all coming in countless shapes, sizes, and configurations.

For simplicity's sake, we'll stick to one use case, using well-known third-party solutions that we can use for free: GitHub and Railway. If you use other solutions, the deploy process might look ever so slightly different, but keep an eye out for the code-specific configurations we'll make!

☑️ Prerequisites

Our app uses Node.js on the backend and React on the frontend. This course can be completed stand-alone but builds on concepts previously covered in the Lift-off series.

If you don't have a GitHub account, you can create one for free here.

Optionally, you can install Git on your machine to add, commit, and push changes. Or you can use the GitHub web editor to make the same changes.


Let's get moving and get our project set up!

🔧 Project Setup

For clarity in the deployment process, the server and client apps have been split into two separate repos:

In previous courses, the two apps were located in the same repo.

Keep those links handy, we'll use them in the next two lessons.

Signing up for Railway

Railway is a cloud service platform that enables us to deploy our app without having to worry about the infrastructure specifics. This course uses Railway because it can sync to a GitHub repository and it has a free tier that lets us run our app without a credit card!

We can get started with Railway by clicking Login on the homepage. You can choose to login with your email, or with your GitHub account directly. We'll authenticate with our GitHub account and save ourselves some additional steps.

You might also need to complete verification steps for Railway to get access to your account.


Up next

We've got everything we need, let's get started by deploying the server! 💪🏽