Skip to content
Augur - Prediction Market Protocol and Client
TypeScript Solidity Python CSS JavaScript HTML Other
Branch: master
Clone or download

Latest commit

bconfortin Added rel noreferrer and fixed target blank (#6500)
* Added rel noreferrer and fixed target blank

* Added noopener as well, preventing the use of window.open
Latest commit b2621c5 Feb 28, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Create design-template.md May 7, 2019
docs Added getting started instructions (tested on ubuntu 18.04) (#5951) Feb 5, 2020
infra TF: Config and networking updates for demo cluster Feb 26, 2020
packages Added rel noreferrer and fixed target blank (#6500) Feb 28, 2020
scripts Support yarn <1.22 and yarn == 1.22 Feb 9, 2020
support blake2d python library requires rust Jan 25, 2020
.dockerignore removes python2, fixes core tests (#2347) Jun 7, 2019
.editorconfig various pull in issues Dec 17, 2019
.gitignore
.mergify.yml Go back to smart merge strategy Jan 24, 2020
.nvmrc Update all non-major dependencies Sep 24, 2019
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#762) Feb 5, 2019
LICENSE Initial commit Jul 31, 2018
README.md Poke readme just for a commit Feb 20, 2020
StableIPFSLoader.html Formatted with prettier and added suggestions from review Dec 4, 2019
azure-pipelines.yml demo_build ETHEREUM_NETWORK=demo Feb 24, 2020
debugging.md Add debugging doc Feb 20, 2020
issues-workflow.md Update issues-workflow.md Feb 25, 2019
jest.config.js fix for market state bug (#5463) Jan 9, 2020
lerna.json bumps version to 2.0.0-alpha.2 Nov 26, 2019
package.json move fingerprint dep to augur-ui Feb 14, 2020
peek.yaml turns on featurepeek for all PRs (#3189) Aug 11, 2019
prettier.config.js adding gts for linting and type rules (#2461) Jun 13, 2019
renovate.json Update renovate.json Jul 16, 2019
setup_tmux.sh Remove augur.js (#2642) Jul 3, 2019
tsconfig-base.json upgrade to es2017 and TS 3.7 Jan 23, 2020
tsconfig.json Rework webpack config and other adjustments (#3868) Sep 30, 2019
tsconfig.release.json use Gnosis Deps Aug 8, 2019
tslint.json Remove parseInt tslint rule Dec 5, 2019
yarn.lock fix test Feb 25, 2020

README.md


Augur is a decentralized oracle and peer to peer protocol for prediction markets. Augur is free, public, open source software, portions of which are licensed under the General Public License (GPL) and portions of which are licensed under the Massachusetts Institute of Technology (MIT) license. Augur is a set of smart contracts written in Solidity that can be deployed to the Ethereum blockchain.

Augur is a protocol, freely available for anyone to use however they please. Augur is accessible through a desktop client app, similar to interacting with an Ethereum or Bitcoin node. Users of the Augur protocol must themselves ensure that the actions they are performing are compliant with the laws in all applicable jurisdictions and must acknowledge that others’ use of the Augur protocol may not be compliant. Users of the Augur protocol do so at their own risk.

For more information about the Augur protocol, check out the FAQ.

Looking for Augur App? Click Below:

Installation

Clone Augur's Monorepo.

  • git clone https://github.com/AugurProject/augur.git

Then, install the packages using Yarn -- installation must be done via yarn and not npm since Augur utilizes the Yarn Workspace funcitonality for monorepo support.

  • yarn

Repository Typescript build commands

NOTE: Run yarn at the base of the repository to install dependencies before running any of the following.

Command Purpose
yarn build Build all everything but the UI once.
yarn build:watch Build everything but the UI continuously.
yarn build:clean Remove JUST typescript build artifacts
yarn clean Remove everything that isn't currently being tracked by git (node_modules, build aretifacts, etc.)
yarn docker:all Run all the needed dockers to run the UI in dev mode

UI development

Simple startup steps:

  1. Install yarn
  2. Install docker (docker desktop is a simple way)
  3. Install node >= 10.14.2, supports node 11 and 12 too
  4. Run these in console, then open localhost:8080 in your browser
docker kill $(docker ps -a -q);
docker system prune -af
yarn clean
yarn
yarn build
yarn docker:all
yarn build -w
yarn workspace @augurproject/ui dev

Connect MetaMask to localhost:8545 and go to http://localhost:8080 in your browser. Click on "login", select MetaMask/web3, and check the Gnosis Safe checkbox. This will create a contract wallet for you which will automatically receive testnet DAI.

Startup steps for Ubuntu 18.04

More advanced startup steps

Run the following command:

  • yarn build:watch

Or alternatively using docker-compose:

  • docker-compose -f support/gitstart/gitstart.yml up

On a different terminal window, you can either run with the variable ETHEREUM_NETWORK set to "kovan", that is one of the testnets of the Ethereum Network, or without this variable, in which case it will search for data in your localhost/127.0.0.1. As of right now, "kovan" is the only testnet supported.

Running on localhost:

  • yarn workspace @augurproject/ui dev

Running on the "kovan" testnet

  • ETHEREUM_NETWORK=kovan yarn workspace @augurproject/ui dev

Running the workspace currently shows quite a few warnings regarding source mappings. We will fix this as soon as possible.

Docker images available

Command Purpose
yarn docker:geth:pop-15 15 second block times, real time, has contracts and canned market data.
yarn docker:geth:pop 5 second block times, fake time, use flash scripts to move time .
yarn docker:geth:pop-normal-time 5 second block times, real time, has contracts and canned market data.
yarn docker:geth 5 second block times, blank image with no contracts uploaded.

Use deploy script from augur-tools to manually deploy the contracts.
yarn tools deploy

See Augur Tools for more information.

Gnosis Development

For development/testing, we have a Gnosis relayer deployed on Kovan.

The best way to dev against this is to use the running on the "kovan" testnet flow.

  • ETHEREUM_NETWORK=kovan yarn workspace @augurproject/ui dev

Here are some LOADED Portis ACCOUNTS.

test1@augur.net
test2@augur.net
test3@augur.net
test5@augur.net

password: ** as team **

Also, you can find the kovan relayer API below -- usful for getting status checks on safes https://gnosis.kovan.augur.net/api/v2/safes/{CHECKSUM_ADDRESS}/funded/

100% Open Source

All parts of Augur are entirely open source. You can view, edit, and contribute to Augur via the repositories hosted on GitHub!

  • Augur Core - The core implementation of the Augur Project as Smart Contracts written in Solidity for the Ethereum Network.
  • Augur SDK - Typescript library for Node.js and the browser to help communicate with the Augur smart contracts.
  • Augur UI - A reference client UI which uses Augur Node and a connection to the Ethereum Network to interact with the Augur community.

Documentation and Whitepaper

Developer documentation is available on the Augur documentation site. If you find any mistakes or want to add any clarifications, you can submit pull requests for updates to the GitHub repository.

If you're interested in going in-depth with Augur, the Augur whitepaper provides an in-depth look at the game theory behind the Augur protocol.

Report Issues

Augur needs community support to find and fix issues in the protocol, middleware, client libraries, and applications. If you have an issue, or find a bug please create an issue with any information needed to recreate the problem.

If you're a developer wanting to contribute to the Augur community, please check out the open issues and feel free to propose fixes by submitting a pull request to the appropriate repository.

You can’t perform that action at this time.