Ethereum application to incentive open-source development in GitHub by opening direct fair payment channels for bounties and indirect payments through tokenization of commits.
This project was formely known as GitHubTokens, created to tokenize contributions of TheEtherian news platform.
The project become embraced by Status Network that will integrate it as backend of a trustless Commiteth.
For a project being accepted by GitHubOracle it must have a file in root of tree called .gitpoints
with specifing user-agent:
to *
or githuboracle
.
Example:
user-agent: *
commits-reward: words
issues-reward: pulls, comments, commits, reactions
pulls-reward: comments, commits
comments-reward: reactions
reactions-reward: heart, +1
To control GitHubOracle users need to link their GitHub user login to an ethereum address.
User calls GitHubOracle and passes his username and the gistid, GitHubOracle registers users by loading gistid file called register.txt
under user login
. This file must contain only the ethereum address who made the register call, starting with 0x
.
Any repository that enabled commits-rewards will have tokenization enabled of the contributions and a donation bank.
The avaliable modes are lines
or words
that respectively mint tokens by added lines or added words.
GitHub Oracle load commits in batches, and accept continue in case of huge commit trees (+4k commits).
Repositories that enabled tokenizations of contributions also have a DonationBank that can be withdrawn by Project Token Holders in the start of every epoch, called locked period, where trasfers and minting are blocked.
Issues may be tracked by GitHubOracle, accept payments, depending on the .gitpoints
configuration, positively reacted posts and merged pull requests/commits generate points that allow issue contributors to withdraw a fair share of balances related to the issue.
Different types of contracts can be programmed to accept buy of project tokens by a list of allowed users/accounts.
The initial coin offers may be based on project tokens or use project tokens to mint the developers share.
The project may be deployed in PoA chains, such Rinkeby and Kovan, and automatically faucet as code wage contract in registered projects to all developers.
Ethereum network potential still much unexplored and we still don't know all incredible things we can do. The tokens are ERC20 and ERC23 compataible so your project token might even become exchangable in a descentralized trade market.
Developed by Ricardo Guilherme Schmidt <3esmit>;
Special thanks to all that made this possible: Status.im, Oraclize, Solidity & Remix team, ParityTech, Kovan, Rinkeby, TheEtherian, Giveth, Ether.camp, Foundation.