Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kamalbuilds/fvm-contract
https://github.com/kamalbuilds/fvm-contract
Last synced: 3 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/kamalbuilds/fvm-contract
- Owner: kamalbuilds
- Created: 2023-02-02T13:53:47.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2023-02-06T07:14:07.000Z (almost 2 years ago)
- Last Synced: 2023-07-27T08:42:48.958Z (over 1 year ago)
- Language: Solidity
- Size: 258 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# The DataDAO Marketplace Contract
**A FVM compatible Data DAO Marketplace Bidding contract**### Clone the repo
```sh
git clone https://github.com/legendarykamal/FVM-Contract.git
```### Install the node modules
```sh
cd FVM-Contractnpm install
```### The Data DAO MarketPlace Contract
The folder structure of the [Data DAO contract](https://github.com/legendarykamal/FVM-Contract/blob/master/contracts/data-dao/) is as below
.
├── base # Base Contracts
│ ├── DataDAOConstants.sol # Constants
│ └── DataDAOCore.sol # Core functions integrated with filecoin.sol
├── interfaces # Interfaces
│ ├── IDataDAO.sol # Interface for Data DAO contract
├── DataDAO.sol # The Base Data DAO contract
└── DataDAOBounty.sol # DataDAOBounty Contract## Core Idea
The DataDAO contract is build for a platform where storage providers could bid on proposals.
## Functionality and possible customization
The deal is tracked by the following deal states
- Proposed
- Passed
- Active
- Expired
- Rejected (in the case of dispute)> Add a user
This function assigns the role to the user that is being added to the DAO, the members have special rights like funding the deals and voting in the times of disputes.
> Create a new deal proposalThis function is used to create a new deal, they are created by the clients.
> Activate the deal
The function seeks verification from the contract on the storage provider's claim that the deal was created on Filecoin Network and the data is being stored.
> Reward
This function can be found inside the DataDAOCore.sol file, and is responsible to send $FIL to the storage provider.
## Data DAO Bounty Contract Functionalities
The users with the Data DAO membership NFT can join the Data DAO as a member and would be able to fund the deals.Once the deal proposal is created by a member and $FIL are locked inside the contract, the admins would either approve or reject the proposal. If the deal proposal is rejected, the member gets back the locked $FIL else the deal is taken forward to storage provider.
The storage provider would bid on the client proposals.
The storage provider would store the data generate the proof and provide the deal ID to the DataDAO. The DataDAO contract will check with the Filecoin storage market to confirm whether the supplied deal ID is activated and stores the claimed data. Once the deal is expired, the Data DAO will pay the storage provider.