Python library to access Turbo-Geth/Silkworm data remotely using their Key-Value (KV) protocol over gRPC.
Silksnake requires Python 3.x. Install it from here and check the installation using
$ python --version
Python 3.6.9
Hereafter python
command refers to the Python 3.x interpreter.
After Python installation, it is recommended Upgrading pip
The project is organized in the following folders:
- docs contains the programming guide of Silksnake and the user guide of Silksnake tools
- silksnake contains the Silksnake source code
- tests contains the unit and integration tests
- tools contains the Silksnake command-line tools for retrieving data using KV gRPC protocol
Please perform the following commands from Silksnake root folder.
Install dependencies using
$ pip install -r requirements.txt
or
$ python setup.py
Run unit tests using
$ pytest tests/unit
Run test coverage using
$ coverage run -m pytest
$ coverage report
Run pylint using
$ pylint silksnake tests tools
Run binding generation for KV gRPC protocol using
$ python -m grpc_tools.protoc --proto_path=. --python_out=. --grpc_python_out=. silksnake/remote/proto/kv.proto