AugurプロジェクトのGitHubリポジトリには、32個のリポジトリがあります。
重要なリポジトリを中心に概要をまとめました。
- システム全体で、インストール環境として、Python 2.7.6+, Node.js 8+, and Solidity 0.4.24が必要との事です。(augur-coreリポジトリに書いてありました)
重要なリポジトリ
-
augurリポジトリ
-
Augurプロトコルの概要説明のREADME.mdが入っている。
-
augur.jsリポジトリ
-
Augur JavaScript API
-
ほとんどが.jsファイルだが、
script/
に.shファイルもある。 -
src/connect/*
やsrc/rpc-interface.js
でethrpcを生成しているので、JSON-RPC部分も含むかもしれない。GitHub内の ethereumjs/ethrpcリポジトリ も参照。
var Augur = require("augur.js");
var augur = new Augur();
var ethereumNode = { http: "http://127.0.0.1:8545", ws: "ws://127.0.0.1:8546" };
var augurNode = "ws://127.0.0.1:9001";
augur.connect({ ethereumNode, augurNode }, (err, connectionInfo) => {
// do stuff
});
-
augur-coreリポジトリ
-
Ethereumのコントラクトが入っている。
-
testsディレクトリに、レポーティングや取引のテスト、各関数のテストが書いてある。
-
Oyenteというスマートコントラクト の解析ツールを使っている。
-
ロードマップや用語集へのリンクもREADME.mdに書かれている。
-
source/contracts/factories
: コンストラクタ for universes, markets, fee windows, etc. -
source/contracts/libraries
: データ構造 used elsewhere in the source code. -
source/contracts/reporting
: Creation and manipulation of universes, markets, fee windows, and reporting-related tokens. -
source/contracts/trading
: Functions to create, view, and fill orders, to issue and close out complete sets of shares, and for traders to claim proceeds after markets are closed. -
Augur Nodeリポジトリ
-
ノード。ブロックチェーンとやりとりし、UIとの通信も行う。
-
ローカルDB(sqliteやPostgreSQL)の設定も含む。
-
デフォルトでは、httpやWebSocketでブロックチェーンと通信する。
-
Rinkebyテストネットに接続する。
-
Knex.js というSQL文生成?ライブラリを使っている。
-
Augur UIリポジトリ(augur | client)
-
ブラウザとのインタフェース。
-
JavaScript。
-
ファイル名が「状態/機能名」で入っているので、リバースエンジニアリングする前にファイル名検索するとよい。
-
Augur Appリポジトリ
-
デスクトップ・アプリ
-
Augur UIとAugur Nodeを含む
-
MacOS/Windows/Linux版のバイナリがある。
-
ログ出力機能もある。
ドキュメント
-
docsリポジトリ
-
Augur JavaScript API documentation
-
http://docs.augur.net のソース。
-
whitepaperリポジトリ
-
各国語のホワイトペーパー。LaTeXやPDFファイル。
-
EIPsリポジトリ
-
イーサリアムの改善提案のドキュメント
-
forked from ethereum/EIPs
ウォーレット
-
MyCryptoリポジトリ
-
イーサリアムやERC-20トークンを扱うためのウォーレット?
-
forked from MyCryptoHQ/MyCrypto
-
etherwalletリポジトリ
-
MyEtherWallet
-
forked from kvhnuke/etherwallet
関連プロジェクト
-
speedomaticリポジトリ(旧:augur-abi)
-
augur用のスマートコントラクト(augur-core)にアクセスするためのABI関連のユーティリティ
-
一般的なABIを使いたい場合は、ethereumjs-abi を使うようにとのこと。
-
MetaMaskでREPトークンを表示できるようにするための画像。申請するとMetaMaskに取り込んでもらえる。
-
forked from MetaMask/eth-contract-metadata
-
augur-ui-extractorリポジトリ
-
Augur UI のDockerファイルを作成するスクリプト?
-
augur-ui-sandboxリポジトリ
-
新しいUIや機能を試すための場所。
-
2017年7月から更新されていない。
-
Electron (Muon) + Metamask Boilerplate
-
ElectronとMetaMaskでデスクトップアプリを作る際に使うひな型。
-
Soliumリポジトリ
-
Solidityの構文チェックをするlinter。
-
forked from duaraghav8/Solium
-
solidity-flattenerリポジトリ
-
Solidityのファイルを、1ファイルにまとめるツール。依存関係も解決するぽい。
-
forked from BlockCatIO/solidity-flattener
-
go-ethereumリポジトリ
-
Official Go implementation of the Ethereum protocol https://geth.ethereum.org
-
forked from ethereum/go-ethereum
-
pyethereumリポジトリ
-
EthereumのPython用ライブラリ?
-
次世代暗号ネットワーク(?)
-
forked from ethereum/pyethereum
-
py_eccリポジトリ
-
Implements optimal ate pairings over the bn_128 curve.
-
forked from ethereum/py_ecc
-
Python implementation of ECC pairing and bn_128 curve operations
-
(Python用の数学関連のライブラリぽいが、なぜforkしたのか不明)
-
bignumber.jsリポジトリ
-
整数の精度をいくらでものばせるようにするJavaScriptライブラリ。
-
forked from MikeMcl/bignumber.js
-
react-blockiesリポジトリ
-
イーサリアムのウォーレットからアイコン画像(Identicon)を作るためのReactコンポーネント。
テスト項目
-
augur-walkthroughリポジトリ
-
テスト手順やチェックリストが書かれている。
-
augur-bountiesリポジトリ
-
バグ報告したり、ツールやデバッガの実装をすると、懸賞金をもらえる。
-
augur-auditsリポジトリ
-
augur-coreやSolidity Compilerのコード監査の記録。ZeppelinやCoinspectによる監査。
プロジェクトのホームページ
-
landing-pageリポジトリ
-
Augurのホームページ(https://www.augur.net/ )のソース。htmlとか画像とか。
-
brandingリポジトリ
-
ロゴ画像素材。
その他のプロジェクト
- rep-migrationリポジトリ
- 2018年7月10日のリリースで行われた、REPトークンの移行のためのプロジェクト。
- 2018/07/10 Augurのローンチを参照。
(調査中)
-
ethereum-nodesリポジトリ
-
Docker images for geth and Parity
-
Augur's Ethereum Nodes
-
Reliable stream of Ethereum blocks
-
forked from ethereumjs/ethereumjs-blockstream
-
forkした理由は不明。
-
Makes store.subscribe available to Redux thunks
-
コードを静的解析して、最適化するツール?
まとめ
重要な、augur.js/core/Node/UIの4つのリポジトリを調べておけば、あとは適宜参照で良さそうです。
次回は、JavaScriptでAugurに接続し、マーケット情報を得るやり方を説明します。