Gimbal Project Treasury and Escrow (GPTE) is an open-source Cardano Dapp that allows builders to coordinate work and get projects done.
It consists of two Smart Contracts: A Treasury Contract that holds a pool of tokens, and an Escrow Contract that manages Commitments made by Contributors.
GPTE provides essential Cardano tooling that anyone can use. It provides rails for new forms of distributed collaboration on both long-term projects and quick tasks, paving the way for people to make the most of both their independence and interdependence in a decentralized world.
The Gimbalabs developer community is working to extend the features of this Decentralized Application, and is ready to support you to create your own implementation.
GPTE is built on two simple yet effective Plutus Contracts that help developers understand how Plutus works. Our goal is to help developers to imagine new use cases.
A Treasury Contract locks a pool of tokens and sets the rules for how Contributors commit to working on Projects.
A Commitment Escrow Contract locks a subset of tokens from the Treasury every time a Contibutor commits to a Project.
Thanks to the design of Plutus, the validation logic of these two contracts can be re-used across many instances of GPTE. Anyone who wants to start a Project can create a new, independent instance of the Dapp. Thanks to the architecture of Cardano, Contributors create an on-chain record of the Projects they complete, building emergent reputation that can be referenced by anyone.
Thanks to the promise headless dapps, anyone can create new user interfaces for interacting with these contracts and viewing data. And thanks to the transformative power of open source development, GPTE will change over time. We invite you to get involved by signing up for Plutus PBL or dropping by Live Coding at Gimbalabs (every Wednesday and Thursday at 1430 UTC).
To create an instance of GPTE, you will need to define two roles: Issuers and Contributors.
lock funds in a treasury, write Project descriptions in Markdown files like this, and approve the distribution of Project tokens.
make Commitments to working on Projects, and earn tokens upon completion. Unique Approval Processes can be defined for each instance of GPTE. At Gimbalabs we are actively experimenting with collective Approval Processes, and refining the Treasury and Escrow Contracts based on what we learn.
Issuer and Contributor Roles are represented by Cardano Native Assets. Issuer and Contributor Tokens can be used across different instances of GPTE, or can be minted with new rules for every unique implementation of GPTE.
Build Your Skills + Your Reputation
Create an Instance of GPTE
A number indicating the required Approval Process is included in each Project description. We will test these processes and refine this list.
1: Direct from Issuer
Issuer decides whether Project is completed, then Distributes it.
2: Git contribution approved by Issuer
Submit a Merge Request to this project on GitLab. When Approved, Commitment will be distributed.
3: Async Group Approval
Share results with N people and get approval from M of N. Key question: Who can be in the list of N? We need a system for identifying who can be the Approver. We can take a look at Peer Review processes.
4: Live Group Consent
Give a live presentation at Playground or at Live Coding and take feedback. The Project Commitment will be distributed by a consent process, which means that no one in the meeting has an objection to distribution.
5: Live Group Approval
Give a live presentation at Playground or at Live Coding, get approval from M of N attendees.