High-Performance Real-Time Blockchain Activities Monitoring via Webhook.
Welcome to Crypitor, a cutting-edge platform designed for high-performance, real-time monitoring of blockchain activities. Our mission is to provide developers, businesses, and enthusiasts with the tools they need to stay updated on blockchain transactions and events across various networks.
- Real-Time Monitoring: Instantly receive notifications for blockchain activities and transactions as they happen.
- Multi-Network Support: Seamlessly create monitors across multiple blockchain networks.
- Comprehensive Coverage: Support for native transfers, ERC20, and ERC721 tokens.
- Webhook Integration: Effortlessly integrate with your existing systems using our robust webhook endpoint.
- Retry System: Ensure reliable data delivery with our webhook retry mechanism.
The following dependancies have been added to improve developer workflow and build the application.
- Docker Docker is a containerization software.
- MongoDB MongoDB database.
- Nest.js Nest (NestJS) is a framework for building efficient, scalable Node.js server-side applications.
- Apache Kafka Apache Kafka is a distributed streaming platform for real-time data processing.
Clone the repository, change all references to {PROJECT_NAME} in all files (do find and replace), also ensure project name matches the root directory name Eg: docker-compose.yml, Makefile, .env files (client/app) etc..
git clone https://github.com/crypitor/blockchain-webhook
Update .env files for both client and app.
Change directory.
cd /app
Install node_modules.
yarn install
Install Nest.js CLI globally
yarn global add @nestjs/cli
Start docker dependencys.
make up-deps
Start the application.
yarn start:dev api
yarn start:dev polling-block
yarn start:dev monitor-service
yarn start:dev worker-service
Visit back-end http://localhost:3002.
Update .env files for docker. Run the following command to build the containers and start the development environment, make sure to be inside the "app" directory.
cd docker
docker compose up -d
access http://localhost
Get connection string URL's, run the following command in /app directory.:
make db
Access MongoDB outside Docker containers:
mongodb://{PROJECT_NAME}:{PROJECT_NAME}@127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.5.0
Access MongoDB within the Docker containers, use this URL for the app to connect to MongoDB instance:
mongodb://{PROJECT_NAME}:{PROJECT_NAME}@mongo:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.5.0
Visit front-end http://localhost:3000.