From 6db39af737ad647737abf5a8cfe6bed4b25e844a Mon Sep 17 00:00:00 2001 From: alexm-status <38202046+alexm-status@users.noreply.github.com> Date: Thu, 26 Apr 2018 11:55:34 -0700 Subject: [PATCH] Update README.md --- README.md | 60 +++++++++++++++++++++++++++---------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 2efc3ed..b0a12dd 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Status Open Bounty [![Riot Chat Badge](https://img.shields.io/badge/join%20%23openbounty-riot-green.svg)](https://chat.status.im/#/room/#openbounty:status.im) -Allows you to set bounties for Github issues, paid out in Ether or any ERC-20 token. +Allows you to set bounties for GitHub issues, paid out in Ether or any ERC-20 token. More information: https://wiki.status.im/Status_Open_Bounty @@ -31,7 +31,7 @@ You will need [Leiningen](https://github.com/technomancy/leiningen) 2.0 or above ### PostgreSQL -Make sure you install [PostgreSQL](https://www.postgresql.org/) and properly set it up: +Install [PostgreSQL](https://www.postgresql.org/), and set it up properly: ``` psql postgres -c "CREATE USER commiteth WITH PASSWORD 'commiteth';" @@ -40,51 +40,51 @@ psql postgres -c "CREATE DATABASE commiteth;" ## Application config -Make sure to create `/config-dev.edn` and populate it correctly, which is based on `env/dev/resources/config.edn`. Description of config fields is given below: +Create `/config-dev.edn`, and populate it correctly, according to `env/dev/resources/config.edn`. The config fields are described below: Key | Description --- | --- dev | Currently specifies whether Swagger UI endpoints should be added to routes port | HTTP port for the Ring web app -dev-login | Local development only. Set it to GitHub name of your dev user in order to login into the system bypassing OAuth. `server-address` has to be then correspondingly set to your localhost address. +dev-login | Local development only. Set it to the GitHub name of your dev user in order to log in to the system and to bypass OAuth. Following this, set `server-address` according to your localhost address. nrepl-port | nREPL port for development -jdbc-database-url | PostgreSQL database URL. For instance, URL to local db would be `jdbc:postgresql://localhost/commiteth?user=commiteth&password=commiteth` -server-address | URL and port of local server that can be resolved from public internet. It will be used as a redirect URI during GitHub OAuth authorization process +jdbc-database-url | PostgreSQL database URL; for instance, the URL to the local db would be `jdbc:postgresql://localhost/commiteth?user=commiteth&password=commiteth` +server-address | The URL and port of the local server that can be resolved from public internet. It will be used as a redirect URI during GitHub OAuth authorization process. eth-account | Ethereum account ID for the bot eth-password | Ethereum account password for the bot -eth-rpc-url | RPC URL to Ethereum node, e.g. Geth. Either local or remote -eth-wallet-file | Location of wallet file. If Geth is run with the parameters as given below, it will reside under `$HOME/.ropsten/keystore` -offline-signing | Specifies whether to sign transactions locally before sending. Default is true. Set to false when connecting to local Geth node that unlocks accounts +eth-rpc-url | RPC URL to the Ethereum node, e.g. Geth. Either local or remote +eth-wallet-file | Location of the wallet file. If Geth is run with the parameters specified below, it will reside under `$HOME/.ropsten/keystore`. +offline-signing | Specifies whether to sign transactions locally before sending. Default is true. Set to false when connecting to the local Geth node that unlocks accounts. tokenreg-base-format | Should be set to `:status` -github-client-id | Related to OAuth. Copied from GitHub account Settings->Developer settings->OAuth Apps -github-client-secret | Related to OAuth. Copied from GitHub account Settings->Developer settings->OAuth Apps -github-user | GitHub username for bot account. It is used for posting bounty comments -github-password | GitHub password for bot account +github-client-id | Related to OAuth. Copied from the GitHub account: Settings -> Developer settings -> OAuth Apps +github-client-secret | Related to OAuth. Copied from theGitHub account: Settings -> Developer settings -> OAuth Apps +github-user | GitHub username for a bot account. It is used for posting bounty comments. +github-password | GitHub password for a bot account. webhook-secret | Secret string to be used when creating a GitHub App user-whitelist | Set of GitHub user/org IDs to be whitelisted. E.g. `#{"status-im" "your_org"}` -testnet-token-data | Token data map, useful if there are Geth connectivity problems +testnet-token-data | Token data map; useful if there are Geth connectivity problems ## GitHub integration Open Bounty uses both OAuth App and GitHub App integration. ### OAuth App -Follow the steps [here](https://developer.github.com/apps/building-oauth-apps/creating-an-oauth-app/). Specify the value of `:server-address` as "Homepage URL", and `:server-address` + `/callback` as "Authorization callback URL". Be sure to copy Client ID and Client Secret values in the config file. +Follow the steps [here](https://developer.github.com/apps/building-oauth-apps/creating-an-oauth-app/). Specify the value of `:server-address` as "Homepage URL", and `:server-address` + `/callback` as "Authorization callback URL". Be sure to copy the Client ID and Client Secret values in the config file. ### GitHub App Follow the steps [here](https://developer.github.com/apps/building-github-apps/creating-a-github-app/). Be sure to specify `:server-address` + `/webhook-app` as "Webhook URL", and `:webhook-secret` as "Webhook Secret". ## Contracts -All information related to development of OpenBounty smart contracts can be found in [`contracts/`](/contracts/) +All information related to development of OpenBounty smart contracts can be found in [`contracts/`](/contracts/). ## Running ### Ethereum node -There are two options for connecting to an Ethereum node: either run a local node with an unlocked account, or connect to a remote Geth node or Infura. We will be connecting to Ropsten which is a test Ethereum network. +There are two options for connecting to an Ethereum node: either run a local node with an unlocked account, or connect to a remote Geth node or Infura. We will be connecting to Ropsten, which is an Ethereum network used for testing. #### Local -In order to launch a local geth node with the bot account unlocked issue the following command: +To launch a local geth node with the bot account unlocked, issue the following command: ``` #!/bin/bash @@ -92,7 +92,7 @@ geth --fast --testnet --cache=1024 --datadir=$HOME/.ropsten --verbosity 4 --port ``` #### Remote -Register at [Infura](https://infura.io/signup). You will receive an email with provider URLs. Paste an URL for the Ropsten network into `config.edn` under `:eth-rpc-url` key, and set `:offline-signing` to true. +Register at [Infura](https://infura.io/signup). You will receive an email with the provider's URLs. Paste a URL for the Ropsten network into `config.edn` under the `:eth-rpc-url` key, and set `:offline-signing` to true. ### CSS auto-compilation @@ -109,7 +109,7 @@ lein build-contracts ``` ### Clojure app without REPL -Launch following commands each in its own shell: +Launch the following commands, each in its own shell: ``` lein run @@ -118,13 +118,13 @@ lein figwheel ### Clojure app with REPL -You'll have to start a REPL on the backend and the frontend. +You'll have to start a REPL on the backend and frontend. ``` lein repl ``` -Now you can start a CLJS repl with: +Now you can start a CLJS REPL: ``` (use 'figwheel-sidecar.repl-api) @@ -134,7 +134,7 @@ Now you can start a CLJS repl with: (Alternatively, if you use emacs and CIDER, you can run cider-jack-in. Details [here](https://cider.readthedocs.io/en/latest/up_and_running/)) -Next start the application from the clojure REPL with: +Next, start the application from the clojure REPL: ``` (user/start) @@ -148,7 +148,7 @@ To create a standalone uberjar: lein uberjar ``` -This creates `target/uberjar/commiteth.jar`. You can run it with the following command from within project root: +This creates `target/uberjar/commiteth.jar`. You can run it with the following command from within the project's root: ``` java -Dconf= -jar target/uberjar/commiteth.jar ``` @@ -158,7 +158,7 @@ java -Dconf= -jar target/uberjar/commiteth.jar ### QA -Please refer to [doc/testing.md](https://github.com/status-im/commiteth/blob/develop/doc/testing.md) +Please refer to [doc/testing.md](https://github.com/status-im/commiteth/blob/develop/doc/testing.md). ### Clojure tests @@ -182,9 +182,9 @@ Open http://localhost:3449/cards.html ### CircleCI -We use CircleCI to run unit tests. The following env vars need to be set for this to work: +We use CircleCI to run unit tests. For this to work, set the following env vars: -> These env vars override configuration parameters that are usually set using the `config.edn` file. +> These env vars override the configuration parameters that are usually set using the `config.edn` file. - `ETH_ACCOUNT` - as in `config.edn` - `ETH_PASSWORD` - as in `config.edn` @@ -192,7 +192,7 @@ We use CircleCI to run unit tests. The following env vars need to be set for thi - `ETH_WALLET_FILE` - as in `config.edn` - `ETH_WALLET_JSON` - contents of this will be written to `ETH_WALLET_FILE` -:bulb: Ideally we'd create those parameters in a script. PR welcome. +:bulb: Ideally, we'd create those parameters in a script. PR welcome. ## Update landing page @@ -201,11 +201,11 @@ Landing page is static and different CSS and JS due to time constraints. - Build CSS with Gulp (see `static_landing_page/README.md` - Make changes and `./build-landing-page.sh` -This copies over necessary artifacts to `resources` dir. +This copies the necessary artifacts over to the `resources` dir. ## More info -Detailed information on code structure, troubleshooting, etc. can be found [here](doc/README.md). +Detailed information on code structure, troubleshooting, and more can be found [here](doc/README.md). ## License