@buidly/transaction-logs-processor
v1.0.5
Published
Real-time transaction logs processor
Downloads
4
Readme
REST API facade template for microservices that interacts with the Elrond blockchain.
Quick start
- Run
npm install
in the project directory - Optionally make edits to
config.yaml
or createconfig.custom.yaml
Dependencies
- Redis Server is required to be installed docs.
- MySQL Server is required to be installed docs.
- MongoDB Server is required to be installed docs.
You can run docker-compose up
in a separate terminal to use a local Docker container for all these dependencies.
After running the sample, you can stop the Docker container with docker-compose down
Available Features
These features can be enabled/disabled in config file
Public API
Endpoints that can be used by anyone (public endpoints).
Private API
Endpoints that are not exposed on the internet For example: We do not want to expose our metrics and cache interactions to anyone (/metrics /cache)
Cache Warmer
This is used to keep the application cache in sync with new updates.
Transaction Processor
This is used for scanning the transactions from Elrond Blockchain.
Queue Worker
This is used for concurrently processing heavy jobs.
Available Scripts
This is an Elrond project built on Nest.js framework.
npm run start:mainnet
Runs the app in the production mode. Make requests to http://localhost:3001.
Redis Server is required to be installed.
Running the app
# development watch mode on devnet
$ npm run start:devnet:watch
# development debug mode on devnet
$ npm run start:devnet:debug
# development mode on devnet
$ npm run start:devnet
# production mode
$ npm run start:mainnet
Requests can be made to http://localhost:3001. The app will reload when you'll make edits (if opened in watch mode). You will also see any lint errors in the console.
npm run test
# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:cov