If you’ve ever dreamt of streamlining how you reward contributions on GitHub, then Open Bounty is just the tool for you! It allows users to put bounties on GitHub issues, which can be paid out in Ether or any ERC-20 token. In this guide, we’ll walk you through the essentials of setting up and running Open Bounty, along with troubleshooting tips for a smooth experience.
Table of Contents
Prerequisites
Before diving into Open Bounty, you’ll need to set up your environment:
- Install Leiningen 2.0 or above.
- Ensure that wkhtmltoimage is available in your PATH. You can install it on macOS using the command:
brew cask install wkhtmltopdf
. - Install PostgreSQL and set it up by executing:
psql postgres -c "CREATE USER commiteth WITH PASSWORD 'commiteth';" psql postgres -c "CREATE DATABASE commiteth;"
Application Config
Next, you’ll want to create a configuration file config-dev.edn
with the necessary details as specified below:
dev: Specifies whether Swagger UI endpoints should be added to routes
port: HTTP port for the Ring web app
dev-login: GitHub username for local development
jdbc-database-url: Local PostgreSQL database URL
eth-account: Ethereum account ID for the bot
... (and more)
Think of this as setting up a recipe where ingredients (keys and values) will lead you to your final dish (a functional application). Each ingredient has its purpose, and getting them just right is critical.
GitHub Integration
Open Bounty utilizes both OAuth and GitHub App integration:
- To create your OAuth App, follow instructions here.
- For GitHub App, you can follow the guidelines here.
Contracts
Information on developing OpenBounty smart contracts can be found in the contracts documentation.
Running Open Bounty
To get Open Bounty up and running, you’ll connect it to an Ethereum node—this can either be a local node or a remote one.
- To run a local Geth node using the command:
geth --fast --testnet --cache=1024 ...
- For a remote connection, register at Infura and configure accordingly.
Testing Your Setup
Testing is crucial. Use the following commands:
- For Clojure tests, run
lein test
. - For ClojureScript tests, execute
lein with-profile test doo phantom test
.
More Info
For detailed information on code structure, troubleshooting, and more, check the documentation.
Troubleshooting
If you encounter issues while setting up or running Open Bounty, consider the following:
- Ensure all prerequisites are correctly installed and configured.
- Double-check your
config-dev.edn
for any typos or incorrect values. - Verify that your Ethereum node is operational and accessible.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.
Now you’re ready to dive into Open Bounty and start rewarding contributions on GitHub like never before!