Skip to content

An evolving blockchain for prediction markets and futarchy.

License

Notifications You must be signed in to change notification settings

c410-f3r/zeitgeist

 
 

Repository files navigation

Zeitgeist: An Evolving Blockchain for Prediction Markets and Futarchy

Rust

Zeitgeist is a decentralized network for creating, betting on, and resolving prediction markets. The platform's native currency, the ZTG, is used to sway the direction of the network, and as a means of last-call dispute resolution. Additionally, Zeitgeist is a protocol for efficient trading of prediction market shares and will one day become the backbone of the decentralized finance ecosystem by allowing for traders to create complex financial contracts on virtually anything.

Modules

  • orderbook-v1 - A naive orderbook implementation that's only part of Zeitgeist's PoC. Will be replaced by a v2 orderbook that uses 0x-style hybrid on-chain and off-chain trading.
  • prediction-markets - The core implementation of the prediction market logic for creating and resolving markets.
  • swaps - An implmenation of a constant function automated market maker (similar to Balancer) that allows for liqudity providing and trading of prediction market shares.
  • shares - Implementation of tradable and transferrable shares of prediction market outcomes.
  • simple-disputes - Simple disputes

How to Build Nodes

Zeitgeist node comes in two flavors, one for standalone self-contained execution and another for Kusama/Polkadot parachain integration.

To build the standalone version, simply point to the top directory of this project and type:

cargo build --release

For parachain, it is necessary to change the current directory to node and then select the appropriated compiler feature flag.

cargo build --features parachain --release

Optimized binaries are usually used for development (faster and smaller) but this behavior is optionally up to you. If desirable, it is also possible to run commands directly with cargo run instead of running ./target/(debug|release)/zeitgeist.

Using Docker

We publish the latest version to the Docker Hub that can be pulled and ran locally to connect to the network. In order to do this first make sure that you have Docker installed locally, then type (or paste) the following commands in your terminal:

docker pull zeitgeistpm/zeitgeist-node
docker run zeitgeistpm/zeitgeist-node --chain battery_park

This will get you connected to the Battery Park testnet.

About

An evolving blockchain for prediction markets and futarchy.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 96.5%
  • Shell 2.9%
  • Other 0.6%