/lagrange-node

Primary LanguageGoOtherNOASSERTION

Lagrange Node

This is the Lagrange Node, a node that can be used to run a Lagrange network.

Table of Contents

Architecture

The Lagrange Node consists of the following components:

  • Sequencer
  • AVS-Synchronizer
  • gRPC Sequencer Server
  • gRPC Client Node

Here is the diagram of the architecture:

Installation

Prerequisites

This project is written in Go 1.21. You can download it from here.

Build

To build the project, run the following command:

make build

This will create a binary called lagrange-node in the dist directory.

Usage

  • To run the sequencer, run the following command:

    ./dist/lagrange-node run-sequencer -c <config-file>
  • To run the gRPC sequencer server, run the following command:

    ./dist/lagrange-node run-server -c <config-file>
  • To join a network and run the client node, run the following command:

    ./dist/lagrange-node run-client -c <config-file>

Migration Tool

The migration tool is used to migrate the database schema. To run the migration tool, run the following command:

go run ./cmd/migrate/... up/down -u <database_url> -s <step>

Test & Useful Commands

Here are the commands to run the tests:

# Run unit-tests
make test
# Run the local network
make localnet-start
# Stop the local network
make stop
# Generate the protobuf files
make proto-gen
# Build the docker image
make docker-build
# Install linter
make install-linter
# Lint the codebase
make lint

License

This project is licensed under the XXXX.

⬆️ Back to Top