Serverless Stack is a free comprehensive guide to creating full-stack serverless applications. We create a note taking app from scratch.
This repo is for the serverless backend API that we build over the course of the tutorial. You can find the repo for the frontend React app here. And the repo for the tutorial here.
To support the different chapters and steps of the tutorial; we use branches to represent the project codebase at the various points. Here is an index of the various chapters and branches in order.
- Set up the Serverless Framework
- Add Support for ES6/ES7 JavaScript
- Add a Create Note API
- Add a Get Note API
- Add a List All the Notes API
- Add an Update Note API
- Add a Delete Note API
- Handle API Gateway CORS errors
- Unit Tests in Serverless
To use this repo locally you need to have the Serverless framework installed.
$ npm install serverless -g
Clone this repo and install the NPM packages.
$ git clone https://github.com/AnomalyInnovations/serverless-stack-demo-api
$ npm install
Run a single API on local.
$ serverless invoke local --function list --path event.json
Where, event.json
contains the request event info and looks something like this.
{
"requestContext": {
"authorizer": {
"claims": {
"sub": "USER-SUB-1234"
}
}
}
}
Finally, run this to deploy to your AWS account.
$ serverless deploy
This project refers to an env.yml
file for secret environment variables that are not checking in to the repo. Make sure to create one before dpeloying - https://serverless-stack.com/chapters/load-secrets-from-env-yml.html.
Serverless Stack is authored and maintained by Frank Wang (@fanjiewang) & Jay V (@jayair). Subscribe to our newsletter for updates on Serverless Stack. Send us an email if you have any questions.