decision-maker
v1.0.0
Published
The flow decision making module for the ArborKnot Collection System"
Downloads
15
Maintainers
Readme
Business Logic
The business logic all of the smart algorithms and decisions will be here
Resources
Getting Started
Install:
- nvm.
Open a terminal and run:
git clone [email protected]:Arborknot/business-logic.git
cd business-logic
cp .env.example .env # modify .env
nvm use
npm install
npm run dev
Then go to http://localhost:3000.
Scripts
| Script | Description |
| ----------------- | -------------------------------- |
| npm run test
| Run tests |
| npm run ci-test
| Run tests in CI mode |
| npm run build
| Build project |
| npm run start
| Run server for production |
| npm run dev
| Run server for dev |
| npm run watch
| Run server for dev in watch mode |
Environment Variables
The following table contains full list of used environment variables:
| Var | Description | Default | Example |
| ----------------------------------- | ----------------------------------- | --------- | --------------------- |
| PORT
| Server port | 3001 | See default |
| DB_HOST
| DB's host | localhost | See default |
| DB_PORT
| DB's port | 5432 | See default |
| DB_NAME
| DB's name | postgres | See default |
| DB_SCHEMA
| DB's schema | public | See default |
| DB_USERNAME
| DB's user | postgres | |
| DB_PASSWORD
| DB's password | X | |
| MESSAGE_MANAGER_INTERNAL_ENDPOINT
| The endpoint of the message manager | X | http://localhost:3006 |
Also see (logger's configuration](https://github.com/Arborknot/logger).
Note:
.env.example
can be used as a reference too.
Runtime Variables
In service config there should be a row named business-logic, the json next to it can contain the following vars
| Var | Description | Default | Example |
| -------------- | -------------------------------------------------------------------- | ------- | ------------- |
| LOGGER_LEVEL
| The level of the log | info | See default |
| TEST_MODE
| When true the the service will not send a request to message manager | false | See default |
Tips :bulb:
Automatically nvm use
https://github.com/nvm-sh/nvm#automatically-call-nvm-use
Exposing localhost to other networks
npx ngrok http 3000
Debugging in VSCode
Install nodemon globally with npm install -g nodemon
.
Enable auto attach and run npm run dev
in VSCode's integrated terminal.
Or in Debug window execute Launch nodemon (client-api)
launch script.