/hub

Primary LanguageGoMIT LicenseMIT

LBRY Hub

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.

Installation

No install instructions yet. See Contributing below.

Usage

Prerequisite: run python block processor and search plugin

Follow the instructions here.

Run this hub

./hub serve

Search for stuff

./hub search text goes here

Contributing

Contributions to this project are welcome, encouraged, and compensated. Details here.

Dev Dependencies

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:

go get google.golang.org/protobuf/cmd/protoc-gen-go google.golang.org/grpc/cmd/protoc-gen-go-grpc

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.

Running from Source

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.

Windows

reflex doesn't work on windows, so you'll need to run go run . serve and restart manually as you make changes.

License

This project is MIT licensed. For the full license, see LICENSE.

Security

We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is here if you need it.

Contact

The primary contact for this project is @lyoshenka (grin@lbry.com).