Skip to content

RealityETH/reality-eth-monorepo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reality.eth monorepo

This repo replaces the old separate repos that were previously at realitio.github.com.

It comprises the following packages, under packages/:

  • contracts: reality.eth contracts source code, also details of supported networks and tokens and the relevant contract addresses.
  • reality-eth-lib: Useful functions for creating and interpreting questions and templates used by the reality.eth system.
  • dapp: The UI front-end as deployed at reality.eth/dapp
  • docs: The system documentation as deployed at reality.eth/docs
  • website: The project website as seen at reality.eth/
  • cli-tools: Javascript tools, mainly used for arbitration
  • graph: Subgraph definitions for https://thegraph.com/
  • template-generator: A GUI tool to create custom question templates.
  • twitter-bot: A script to tweet out new questions and answers.

See the README of each respective package for details.

The following scripts are used for deployment, under tools/:

  • ipfs_build.sh: Deploy web-accessible parts of the project to a web-accessible URL, and pin it to IPFS on the local server. You should then manually add it to pinata and register it with ENS to update reality.eth.link.
  • gh_build.sh: As with ipfs_build.sh but deploying the dapp only, to github.io repo at https://realityeth.github.io/. This is usually updated more frequently than the IPFS build.

NPM packages

The following are published to npm. They are versioned individually, and updated by running lerna publish.

  • @reality.eth/contracts
  • @reality.eth/reality-eth-lib
  • @reality.eth/dapp
  • @reality.eth/cli-tools

Some packages reference each other, for example dapp needs contracts and reality-eth-lib. When developing it can be useful to make your local environment refer directly to the working versions of the other packages in the repo. To do this, instead of running the normal npm install for each JavaScript package, run lerna bootstrap from the uppermost directory. This will install external dependencies normally, but set up dependencies within this repo as symlinks.

NB The dapp lerna setup does not seem to be working correctly. You may need to run npm install separately for the dapp.