decision-maker
v1.0.0
Published
The flow decision making module for the ArborKnot Collection System"
Downloads
4
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.