Full-stack code for my professional website hosted on AWS serverless infrastructure. Everything is written in TypeScript. The ReactJS frontend is deployed using CDK.
This repository exists for two reasons:
- To demonstrate my knowledge of this tech stack.
- To act as an example / template for anyone else interested in using this tech stack.
As stated previously, this repository is written in TypeScript.
I prefer pNpm over both npm
and yarn
for library management.
nvm is used to manage Node
versions.
The frontend is built with ReactJS.
"Standard" React libraries, such as react-router-dom
, styled-components
, and webpack
are also in use.
Note that create-react-app
is not used in the frontend - I find it causes problems "down the road".
Cloud Development Kit is used to deploy the application.
The frontend is hosted in an S3 bucket
and distributed by a CloudFront distribution
.
Additionally, the application uses two Lambda functions
, a DynamoDB table
, and an API Gateway endpoint
.
Each backend folder contains code for one of the Lambda functions.
Nearly all files in the repo are formatted with Prettier. Tests are run using Jest. Code quality is enforced via ESLint.
Obviously, this repository is hosted on GitHub
.
GitHub Actions is used to test pull requests and deploy the site.