Engage Git Repositories into Ethereum DAOs
Go to file
Ricardo Guilherme Schmidt 20f8ad64ac removed metadata support and improved contract size 2017-05-05 06:01:25 -03:00
contracts removed metadata support and improved contract size 2017-05-05 06:01:25 -03:00
scenarios isolated GitHubAPI 2017-03-27 06:42:15 +00:00
scripts pylinting 2017-05-04 04:19:01 -03:00
tools changed abstract tokens to library link, oraclize to library link, introduced issues (not functional) and oraclize computation scripts 2017-03-12 04:24:09 +00:00
LICENSE Repository cleanup 2017-03-02 21:15:28 +00:00
README.md Update README.md 2017-05-04 14:50:17 -03:00
ethereum.json isolated GitHubAPI 2017-03-27 06:42:15 +00:00

README.md

GitHubOracle

Tokenize github repositories by commits and issues. Accept donations in eth tokens, distribute donations and bounties to code commiters.

Usage

User Registration

Create a gist in your github containing in it's body only an ethereum address you own.
Must be in first line with no spaces and no more lines.
Call DGit.register("<your_github_login>","<your gistid>") (oracle cost ~0.06 USD)
Example: DGit.register("3esmit","31a58f2ddf2258697cce1b969e7c298b")

Repository

Call DGit.addRepository("<owner>/<repository>") (oracle cost ~0.06 USD)
Example: DGit.addRepository("status-im/github-oracle")

Tokenize Contributions

Push your commits to GitHub and simply call DGit.updateCommits("<owner>/<repository>")
This call will cost $0.54 USD and can process up to 4000 commits.
Call DGit.continueCommits("<owner>/<repository>") (oracle cost ~0.54 USD)
Example: DGit.updateCommits("status-im/github-oracle")

Bounty issue

When you start an issue at GitHub, you can bounty it. First you need to open it:
Call DGit.openBounty("<owner>/<repository>",<issuenum>) (oracle cost ~0.06 USD)
This will enable people to bounty into this issue, this call can contain itself a bounty to be added. When issue is finalized call DGit.updateIssue("<owner>/<repository>",<issuenum>) (oracle cost ~0.54 USD)
This will tokenize the commits of pull requests cross-referenced with this issue and, after a lock period, distribute a fair share of bounty between contributors.

Withdraw donations

When contract enters in lock period just call GitHubToken.withdraw() to get your share of the donations.