Skip to content

quanLNA/snapshot-hub

 
 

Repository files navigation

Snapshot hub

This is a hub for Snapshot network that stores the database and forwards new messages to peers. The hub hold a private keys to sign valid messages.

Install

  1. Install Node.js, clone the repository, then say:
yarn
  1. Copy .env.example, rename it to .env and set a value for these config vars:
  • DATABASE_URL: The database connection string. You will need to run your own MySQL database or use a Cloud service like JawsDB.
  • RELAYER_PK: This is the private key of the hub. The hub counter-sign every accepted message with this key.
  • FLEEK_API_KEY, FLEEK_API_SECRET and FLEEK_BUCKET are required keys from Fleek for pinning on IPNS.
  1. Create the database schema

Run this query on the MySQL database to create the initial schema with the required tables: https://github.com/snapshot-labs/snapshot-hub/blob/master/src/helpers/schema.sql

Run

  • Use this command to run the hub:
yarn start
{
  "name": "snapshot-hub",
  "network": "livenet",
  "version": "0.1.3",
  "tag": "alpha",
  "relayer": "0x8BBE4Ac64246d600BC2889ef5d83809D138F03DF"
}

Usage

Once your hub is running online, the main hub can relay the messages received to your own hub. Please provide the URL of your Snapshot hub to an admin to make sure it's connected to the network.

Load a space setting

To load a space settings in the database you can go on this endpoint http://localhost:3000/api/spaces/yam.eth/poke (change yam.eth with the space you want to activate).

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.7%
  • Other 2.3%