Kudos Portal is a platform that onboards new contributors to the Substrate, Polkadot & Kusama ecosytem. It serves as an ideal hub for these communities to showcase their projects and encourage learning and discovery among developers. This solution integrates seamlessly with your GitHub projects, benefiting from a trustless, automated reward system that allows you to tag issues with custom incentives. Be it bounties, POAPs, or other utilities, the choice is yours. Developers are attracted to tasks matching their skill sets and interests, and upon completion, our trustless system ensures they are rewarded without any middlemen. The customization stems from our ink! smart contract templates and GitHub workflows, which automate the process.
After leaving the Polkadot Blockchain Academy, alumni find it challenging to locate GitHub issues to continue learning and contributing. This problem, which we have personally encountered, is a common struggle in the open-source software ecosystem. Additionally, incentivizing contributions could attract new developers to build on the ecosystem. However, no solution providing a trustless environment where contributors can receive their dues without intermediaries exists. Be it for reward distribution or for monitoring and reputation.
We showcased a proof of concept (POC) of this project at the Polkadot ink! hackathon, winning the main prize and additional sponsor awards two weeks ago. Here is our 3-minute finale pitch. Today, we are maintaining this momentum by participating in the Encode accelerator program.
The contribution flow relies on two main characters:
- An
organization
(orproject maintainer
) calling for contributors to address certain Github issues. Aspiring contributors
- The organization connects to the Kudos Portal and marks some of its existing Github project as
Looking for contributors
. - Optionnally the organization can tag some project's issues with custom incentives from the portal. It instantiates a reward contract based on available contract templates from our Kudos Factory or specifying a custom one. The custom contract needs to implement the interface defined by the workflow trait. The first time a reward contract is added to a project contribution, a pull request (PR) is automatically opened on the Github repository of the project adding the corresponding workflow.
- An aspiring finds an available contribution on the Kudos Portal. After being assigned it, he starts working on it.
- The contributor opens a PR to resolve the issue specifying its address.
- The organization reviews, approves, and merges the PR, thereby closing the issue.
- The reward workflow is triggered and calls
approve
on the reward contract with the given issue #ID and the contributor address.
- The contributor claims its reward from the Kudos Portal by using the
claim
method on the reward contract with the issue #ID. This action triggers the custom reward flow specified in the contract (e.g. a single bounty transfer, an NFT minting, ..)
This approach offers a high level of customization. The claim
method, the final step in the process, allows for a wide range of reward mechanisms, making it highly adaptable to the specific needs and preferences of the organization and contributors. This flexibility empowers projects to implement diverse and tailored reward structures, whether it's a straightforward balance transfer, the issuance of non-fungible tokens (NFTs), or other creative and unique reward systems, ensuring that the Kudos Ink! platform can seamlessly accommodate a variety of open-source project needs and preferences.
Kudos Ink! provides some templates ready to use as reward workflow with dedicated Github actions and reward contract
Kudos Ink! supports OpenBrush. The approve
method extends the Ownable contract from OpenBrush.
This project uses the ink!athon Boilerplate full-stack dApp boilerplate for ink! smart contracts with an integrated frontend.
In this demo, a contribution refers to "opening an issue in this repository". A proof of contribution will be registered in the demo contract. Below is the detailed workflow:
-
Connect and spot an available contribution on the Kudos Portal.
This action marks your intention to contribute to a project. In this case, to test the demo.
-
Complete the expected work. For this demo, you are required to open an issue in this repository.
-
Once the issue is opened, a proof of contribution will be automatically registered into the demo smart contract. You will be notified in an issue comment with a link to the proof.
-
Finally, check your contribution status, marked as complete, in the Demo UI app.
The Kudos team has dedicated itself to developing within the Polkadot ecosystem over recent months. Our aim is for the community to recognize the significance of our upcoming project. We eagerly welcome feedback and are readily available to address any inquiries. Looking forward to connecting soon!