Coder Social home page Coder Social logo

waldmatias / zeitgeist Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zeitgeistpm/zeitgeist

0.0 0.0 0.0 18.79 MB

An evolving blockchain for prediction markets and futarchy.

Home Page: https://zeitgeist.pm

License: GNU General Public License v3.0

Shell 1.12% Python 0.55% Rust 97.41% TypeScript 0.02% TeX 0.48% Makefile 0.06% Handlebars 0.32% Dockerfile 0.05%

zeitgeist's Introduction

Zeitgeist: An Evolving Blockchain for Prediction Markets and Futarchy

Rust Codecov Discord Telegram

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 traders to create complex financial contracts on virtually anything.

Modules

  • authorized - Offers authorized resolution of disputes.
  • court - An implementation of a court mechanism used to resolve disputes in a decentralized fashion.
  • global-disputes - Global disputes sets one out of multiple outcomes with the most locked ZTG tokens as the canonical outcome. This is the default process if a dispute mechanism fails to resolve.
  • liquidity-mining - This pallet implements the time-based incentivization with Zeitgeist tokens for continuously providing liquidity to swap pools.
  • market-commons - Contains common operations on markets that are used by multiple pallets.
  • neo-swaps - An implementation of the Logarithmic Market Scoring Rule as constant function market maker, tailor-made for decentralized combinatorial markets and Futarchy.
  • 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.
  • simple-disputes - Simple disputes selects the last dispute after a predetermined amount of disputes as the canonical outcome.
  • swaps - An implementation of liquidity pools that allows any user to provide liquidity to the pool or swap assets in and out of the pool. The market maker that is traded against is either a Constant Function Market Maker (CFMM) or a Rikiddo Market Maker.
  • primitives - Contains custom and common types, traits and constants.
  • rikiddo - The module contains a completely modular implementation of our novel market scoring rule Rikiddo. It also offers a pallet, that other pallets can use to utilize the Rikiddo market scoring rule. Rikiddo can be used by the automated market maker to determine swap prices.

How to build and run a Zeitgeist node

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

To build the parachain version, execute the following command:

cargo build --features parachain --release

Optimized binaries (--release) are usually used for production (faster and smaller), but this behavior is optional and up to you.

Our current beta test network Battery Station runs as a parachain. To connect your Zeitgeist parachain node, follow the tutorial at our documentation site.

Alternatively you can run a non-parachain node, which is usually only necessary for testing purposes, by executing the following command:

cargo run --release --bin zeitgeist -- <node-options-and-flags>

A common value for <node-options-and-flags> is --dev --tmp, which runs a local temporary development node.

Using Docker

We publish the latest standalone and parachain version to the Docker Hub, from where it can be pulled and ran locally to connect to the network with relatively low effort and high compatibility. In order to fetch the latest docker image, ensure you have Docker installed locally, then type (or paste) the following commands in your terminal.

For parachain Zeitgeist node:

docker pull zeitgeistpm/zeitgeist-node-parachain

For standalone, non-parachain Zeitgeist node:

docker pull zeitgeistpm/zeitgeist-node

Our current beta test network Battery Station runs as a parachain. To connect your Zeitgeist parachain node, follow the tutorial at our documentation site.

Alternatively you can run a non-parachain node, which is usually only necessary for testing purposes, by executing the following command:

docker run zeitgeistpm/zeitgeist-node -- <node-options-and-flags>

zeitgeist's People

Contributors

c410-f3r avatar lsaether avatar sea212 avatar maltekliemann avatar chralt98 avatar vivekvpandya avatar saboonikhil avatar samuelarogbonlo avatar apopiak avatar jamesprestonza avatar yornaath avatar tvrtkom avatar utibeabasi6 avatar whisker17 avatar omahs avatar zachanon avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.