Repository structure
Overview
Standard file and folder for each backend microservice.
Root directory
app
The app folder holds all logic for the service, the files inside this folder are a single serverless/node project.
config
The config folder has files that are shared by both app and resource projects, most per-deploy settings are saved here.
resource
The resource folder is a stand alone serverless/node project that deploys resources that should not change often, deploying as a separate stack gives some protection against damaging resources such as databases when making regular changes to logic.
files
.gitignore
Global .gitignore for entire git project
COPYING
Standard license information
README.md
Landing page when viewing the project on repository host
app project
initial_setup
Offers a method to setup an initial instance of the service.
config.js
Configurable details that will be implemented during initial setup
initialSetup.js
Logic that performs the initial setup, is deployed as a Lambda function and expected to be run once after deployment, after invoked it can be removed or disabled on AWS
src
Per service logic
lib
The lib folder stores functions that are used by multiple Lambda functions
__test__
Holds code that executes local unit tests
resource project
...