A hub provides back-end services to LBRY clients. Services include
- URL resolution
- search
- wallet services (getting and sending transactions, address subscription)
- hub federation and discovery
This project will eventually subsume and replace the wallet server and the lighthouse search provider.
No install instructions yet. See Contributing below.
Follow the instructions here.
./hub serve
./hub search text goes here
Contributions to this project are welcome, encouraged, and compensated. Details here.
Install Go 1.14+
- Ubuntu:
sudo add-apt-repository ppa:longsleep/golang-backports && sudo apt install golang-go
- OSX:
brew install go
- Windows https://golang.org/doc/install
Download protoc
from https://github.com/protocolbuffers/protobuf/releases and make sure it is
executable and in your path.
Install Go plugin for protoc and python:
go get google.golang.org/protobuf/cmd/protoc-gen-go google.golang.org/grpc/cmd/protoc-gen-go-grpc
pip install grpcio grpcio-tools github3.py
Lastly the hub needs protobuf version 3.17.1, it may work with newer version but this is what it's built with, on ubuntu systems you'll have to install this from source see the GitHub actions in .github/workflows
for an example of this.
https://github.com/protocolbuffers/protobuf/releases/download/v3.17.1/protobuf-all-3.17.1.tar.gz
If you can run ./protobuf/build.sh
without errors, you have go
and protoc
installed correctly.
Finally, run the block processor as described under Usage.
Run ./dev.sh
to start the hub. The script will restart the hub as you make changes to *.go
files.
To search, use go run . search text goes here
.
reflex doesn't work on windows, so you'll need to run go run . serve
and restart manually as you make changes.
This project is MIT licensed. For the full license, see LICENSE.
We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is here if you need it.
The primary contact for this project is @lyoshenka (grin@lbry.com).