Bounty Buster is a marketplace for bounties. A user can post or complete tasks with associated bounties. A poster can view his/her posted tasks and the submitted requests for that task. The poster can accept or reject the requests. When a request is accepted, the assigned bounty is sent to the requester.
- Run your local blockchain with
ganache-cli
. - Copy your mnemonic phrase and unlock MetaMask.
- Migrate the BountyBuster contract by running
truffle migrate
. - Run the front-end locally with
npm run start
.
- You will initially be directed to the dashboard, where you will see your tasks and requests.
- Create a task by clicking the + icon and filling out the modal, for a task title, reward, and description. The reward will be used as the transaction value.
- Confirm the transaction.
- You will see your task will be added to the My Tasks table.
- You can click on your task and view its information.
- If you click the List icon in the sidebar, you will see all tasks that are posted on Bounty Buster.
- Switch user accounts in MetaMask, and click on the task that was posted by the first account. As the second account, you will see a button on the top right of the page, which allows you to apply for the task. Click apply and submit the work for the task.
- Confirm the transaction.
- Navigate to the dashboard by clicking the home button in the sidebar.
- You will see your request to the task posted by the first account.
- Switch back to the first account in MetaMask.
- Click the task.
- You will notice that below the task information, a list of requests for that task is populated.
- Click on the first request.
- Click on the options on the top right. You can either accept or reject the task.
- Accepting the task add to the requesters balance.
- Switch to second user account. Account balance should be the reward for the task. You can cash out this account, by clicking the Cash Out button.