Simple NodeJS project with tests and CI/CD.
.
├── bin/
│ └── www
├── config/
│ ├── environments/
│ │ ├── development.js
│ │ └── production.js
│ └── index.js
├── controllers/
│ ├── account.controller.js
│ └── customer.controller.js
├── infra/
│ └── logging/
│ └── logger.js
├── routes/
│ └── index.js
├── logs/
├── services/
│ ├── account.service.js
│ ├── customer.service.js
│ └── transaction.service.js
├── tests/
│ └── routes.tests.js
├── .eslintrc.js
├── .gitignore
├── .travis.yml
├── app.js
├── LICENSE
├── package-lock.json
├── package.json
└── README.md
Hyper Bank requires Node.js v10.16.0+ to run.
Install the dependencies and start the server.
For development environments...
$ cd hyper-bank
$ npm install
$ NODE_ENV=development npm start
Default development port is 3000.
For production environments...
$ NODE_ENV=production && PORT={PORT} npm start
Jest testing command.
NODE_ENV={environment} && PORT={PORT} npm test
To run ESlint.
npm run lint
You can find latest Postman Docs with requests from this link
Hyper Banks uses Travis CI for continuous integration. Details
Travis CI is a hosted continuous integration service used to build and test software projects hosted at GitHub.
If any commits to master branch this stage will triggered.
- In-memory database implementation (can be with mongoose)
- Database migrations
- AWS CloudFormation Templates for CD part of the pipeline
- DI with Awilix
- Error notifications for the container running on AWS ECS Fargate, using AWS CloudWatch and AWS SNS
- Security Improvements
Hyper Bank uses a number of open source projects to work properly:
Unlicense