sourcecred/README.md

82 lines
3.4 KiB
Markdown
Raw Normal View History

# [SourceCred](https://sourcecred.io)
2018-03-02 23:06:46 +00:00
[![Build Status](https://travis-ci.org/sourcecred/sourcecred.svg?branch=master)](https://travis-ci.org/sourcecred/sourcecred)
[![Discord](https://img.shields.io/discord/453243919774253079.svg)](https://discord.gg/tsBTgc9)
2018-03-02 23:06:46 +00:00
SourceCred creates reputation networks for open-source projects.
Any open-source project can create its own _cred_, which is a reputational metric showing how much credit contributors deserve for helping the project.
To compute cred, we organize a projects contributions into a graph, whose edges connect contributions to each other and to contributors.
We then run PageRank on that graph.
To learn more about SourceCreds vision and values, please check out [our website].
For an example of SourceCred in action, you can see SourceCreds own [prototype cred attribution][prototype].
[our website]: https://sourcecred.io/
[prototype]: https://sourcecred.io/prototype/
## Current Status
We have a [prototype] that can generate a cred attribution based on GitHub interactions (issues, pull requests, comments, references, etc.).
Were working on adding more information to the prototype, such as tracking modifications to individual files, source-code analysis, GitHub reactions, and more.
### Running the Prototype
If youd like to try it out, you can run a local copy of SourceCred as follows.
First, make sure that you have the following dependencies:
- Install [Node] (tested on v8.x.x).
- Install [Yarn] (tested on v1.7.0).
- Create a [GitHub API token]. No special permissions are required.
[Node]: https://nodejs.org/en/
[Yarn]: https://yarnpkg.com/lang/en/
[GitHub API token]: https://github.com/settings/tokens
Then, run the following commands to clone and build SourceCred:
```
git clone https://github.com/sourcecred/sourcecred.git
cd sourcecred
yarn install
yarn backend
export SOURCECRED_GITHUB_TOKEN=YOUR_GITHUB_TOKEN
node bin/sourcecred.js load REPO_OWNER/REPO_NAME
# this loads sourcecred data for a particular repository
yarn start
# then navigate to localhost:8080 in your browser
```
For example, if you wanted to look at cred for [ipfs/js-ipfs], you could run:
```
$ export SOURCECRED_GITHUB_TOKEN=0000000000000000000000000000000000000000
$ node bin/sourcecred.js load ipfs/js-ipfs
```
replacing the big string of zeros with your actual token.
[ipfs/js-ipfs]: https://github.com/ipfs/js-ipfs
## Early Adopters
Were looking for projects who want to be early adopters of SourceCred!
If youre a maintainer of an open-source project and would like to start using SourceCred, please reach out to us on our [Discord].
## Contributing
Wed love to accept your contributions!
Please join our [Discord] to get in touch with us, and check out our [contributing guide] to get started.
If youre looking for a place to start, weve tagged some issues [Contributions Welcome].
[Discord]: https://discord.gg/tsBTgc9
[contributing guide]: https://github.com/sourcecred/sourcecred/blob/master/CONTRIBUTING.md
[Contributions Welcome]: https://github.com/SourceCred/SourceCred/issues?q=is%3Aopen+is%3Aissue+label%3A%22contributions+welcome%22
## Acknowledgements
Wed like to thank [Protocol Labs] for funding and support of SourceCred.
Wed also like to thank the many open-source communities that produced the software that SourceCred is built on top of, such as Git and Node.
[Protocol Labs]: https://protocol.ai