Skip to content

Transaction Engine powered by lite-rpc and yellowstone-grpc

Notifications You must be signed in to change notification settings

Bulk-trade/lothrandir

Repository files navigation

Lóthrandir

Lóthrandir is a Transaction Engine powered by lite-rpc and yellowstone-grpc, is a service designed to handle and process transactions at high throughput. It interacts with various APIs and databases to fetch token prices, calculate transaction details, and store transaction information.

Prerequisites

  • Node.js (version 20 or later)
  • pnpm (version 7 or later)
  • Docker (optional, for containerized deployment)

Installation

  1. Clone the repository:

    git clone https://github.com/Bulk-trade/transaction-engine
    cd transaction-engine
  2. Install dependencies:

    pnpm install
  3. Set up environment variables:

    • Create a .env file in the root directory and add the necessary environment variables. Refer to .env.example for the required variables.

Running the Application

Using Node.js

  1. Build the TypeScript code:

    pnpm run build
  2. Start the application:

    pnpm start

Using Docker

  1. Build the Docker image:

    docker build -t transaction-engine .
  2. Run the Docker container:

    docker run -d -p 4000:4000 --env-file .env transaction-engine

Using Docker Compose

  1. Start the services:

    docker-compose up --build -d
  2. See realtime logs:

    docker-compose logs -f
  3. Properly close the services:

    docker-compose down

Development

  1. Start the application in development mode:
    pnpm run dev

Logging

Logs are stored in the logs directory. You can view the logs by opening the logs/bulk.log file.

License

This project is licensed under the ISC License.

About

Transaction Engine powered by lite-rpc and yellowstone-grpc

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •