https://github.com/matootie/serverless
⚡️ Template to build a serverless app deployed to AWS. Features a React SPA deployed to AWS S3, an Express.js based API deployed to AWS Lambda, with both connected and served over AWS CloudFront, all configured using the AWS CDK.
https://github.com/matootie/serverless
aws aws-cdk esbuild express nodejs react serverless template turborepo typescript vite vitejs
Last synced: 12 months ago
JSON representation
⚡️ Template to build a serverless app deployed to AWS. Features a React SPA deployed to AWS S3, an Express.js based API deployed to AWS Lambda, with both connected and served over AWS CloudFront, all configured using the AWS CDK.
- Host: GitHub
- URL: https://github.com/matootie/serverless
- Owner: matootie
- License: mit
- Created: 2021-08-29T18:27:06.000Z (over 4 years ago)
- Default Branch: trunk
- Last Pushed: 2023-07-19T03:58:53.000Z (over 2 years ago)
- Last Synced: 2025-03-25T19:48:49.858Z (about 1 year ago)
- Topics: aws, aws-cdk, esbuild, express, nodejs, react, serverless, template, turborepo, typescript, vite, vitejs
- Language: TypeScript
- Homepage: https://d3ohu3yecjc5ag.cloudfront.net
- Size: 2.06 MB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: .github/README.md
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# Serverless Template
Using this template:
- Update the stack name, description and region in `/packages/cdk/bin/cdk.ts`
- Update metadata files in `/.github` most importantly `FUNDING.yml`, `CODEOWNERS`, and `README.md`
- Write your UI library in `/packages/ui`
- Write your shared utilities in `/packages/utils`
- Write your client functionality in `/services/client`, a React SPA built using Vite
- Write your API in `/services/api`, an Express.js app bundled using ESBuild
- I recommend treating this API as an edge service — a "back-end for front-end" — and simply use it to call downstream data-domain or business logic APIs
## Demo
View a deployed demo of the template at [`d3ohu3yecjc5ag.cloudfront.net`](https://d3ohu3yecjc5ag.cloudfront.net)
The API is accessible on [`/api/*`](https://d3ohu3yecjc5ag.cloudfront.net/api), the client is accessible on all other endpoints.