A very basic implementation of the SyncLink Client.
| Client | Support |
|---|---|
| Teku | ✅ |
| Nimbus | ❎ |
| Lodestar | ❎ |
| Lighthouse | ❎ |
| Prysm | ❎ |
Please refer to the official Python docs to install Python >= 3.10 on your OS.
Start a virtual environment and install or update required Python packages:
python -m venv .venv
".venv/scripts/activate.bat"
pip install -r requirements.txt
On Debian or Ubuntu you first need to install venv:
apt install pythonX.Y-venv
Replace
X.Ywith the python MAJOR and MINOR version retrieved bypython -V
Then start a virtual environment and install or update required Python packages:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
- Copy
config.yaml.exampletoconfig.yaml - Define settings in
config.yamlas desired
| Name | Description | Default | Required |
|---|---|---|---|
| addr | The IP address or domain for the SyncLink Client | 0.0.0.0 | No |
| port | The port for the SyncLink Client | 9000 | No |
| nodes | List of URLs to your SyncLink Server Nodes | [http://localhost:8000] | Yes |
Optional you can also specify the path to your config file or add/overwrite this arguments on the command line.
Run python main.py -h for details.
Activate the virtual environment and run the app.
On Windows:
".venv/scripts/activate.bat"
python main.py
On Linux / MacOS:
source .venv/bin/activate
python main.py
After the app is started you can visit the API docs (depending on your settings in config.yaml) by default at http://127.0.0.1:9000/docs.
To check if the SyncLink Client works proper you may do the following CURL request:
curl -X GET http://127.0.0.1:9000/eth/v2/debug/beacon/states/finalized > ~/synclinktestdata.json
This should download a checkpoint file to ~/synclinktestdata.json with a size of about 50-100MB.
Depending on your settings in
config.yamlyou may need to adjust the ip address and port as needed (127.0.0.1:9000 is the default).
If you're done you can stop the Python process and deactivate the virtual environment by typing the following in your active terminal:
CTRL+C
deactivate