Using AWS Amplify to deploy this site was mind-blowingly easy. 😍

Background

For my old site, I had been using a CMS named Lektor which I had been hosting out of S3. It was pretty easy to use, and I had no real complaints about it, but while working on a project at work to make our engineering documentation easier to discover and read, we started using VuePress. VuePress is so simple and easy to use and I love it.

I remembered seeing that AWS Amplify Console could deploy VuePress, and I had played around a bit with Amplify in re:Invent workshops and enjoyed working with it so I decided to try it out.

Steps

Add Your Repo

The first thing that you have to do is tell Amplify where your code is located. I'm using GitHub, but you can also use BitBucket, GitLab, or AWS CodeCommit (or by uploading build artifacts manually).

After authorizing Amplify to access my Github respositories, all I had to do was choose it in a list. You also have the option to pick a branch, but this site is simple enough that I'm just using master.

Add repository branch

Configuring Your Build

Amplify can automatically detect that you're using VuePress. I didn't have to do anything on this screen. If you've changed your directories or you're using custom npm commands, you'll want to update the YML to match.

There are some advanced settings here where you can set some additional environment variables, but for a site this simple I didn't need to change anything.

Configure Build Settings

Review and Deploy

The final step was to just review what Amplify was going to build. All I had to do was click "Save and deploy":

Review and Deploy

Finalizing

And that was pretty much it. Basically 4 button clicks and done! 🎉🎉🎉

Amplify goes through some steps and even allows you to preview what your site will look like on a variety of devices of different sizes:

Screen Preview

Accessing

Amplify will automatically deploy your site on the amplifyapp.com domain. You can add custom domains as well. I'm using AWS Route 53 so I didn't have to really do anything here either besides type the custom domain name that I wanted to use. Amplify took care of everything and in about 30 minutes my site was up and running on the custom domain.

Summary

I have no experience trying out Amplify on a more complex site (yet), but for something as static and easy as this, it works great. 😌

I recommend checking it out.