Skip to content
This repository has been archived by the owner on Sep 10, 2024. It is now read-only.

taskbar-team/hedera-filecoin-devgrant

Repository files navigation

Welcome to Peer-to-Peer (P2P) Task Transcript 👋

Version Documentation License: GPL v3.0

Overview

Taskbar stands to become a fully autonomous, self-sovereign, gig-economy platform, by maximizing inflow and outflow of tasks and services between users via a secure, trustless, interactive and inclusive web 3.0 ecosystem.

This project, supported by the Hedera x Filecoin devgrants, is set to bring Taskbar closer to a web 3.0 ecosystem by moving the main functionality on-chain and storing a set of the task's metadata on smart contracts, along with references to the task transcripts and proofs. We define the task transcripts as either information which are too large to be stored on chain, or sensitive data which should not be publicly visible. A complete trace of the task will be encrypted and stored on the Hedera File Storage and on the IPFS network through Filecoin, depending on the state of the task. On-chain data are cryptographically secured and available only to the tasker and needer. Due to audit concerns, off-chain storage shall be immutable.

Wiki

See the project's Wiki page for a more detailed overview of the future final form of the project.

Current status of the project

Milestones 1 and Milestone 2 have now been completed.

Install

npm install

Usage

The Hedera local services-node provides the minimum required services to deploy a Hedera Network on a local machine.

Add env variables

Create a .env file and add the environment variables as described in the sample (.env.sample)

Start the app

npm run start

Once started, the application will upload the smart contracts if necessary, otherwise will use the saved contract id's and ABI from storage:

Yc5t5B.md.png

The app is using a an unofficial hedera library (hedera-strato-js) which relies on the hedera-sdk-js, solc and @ethersproject/abi for interacting with Hedera and uploading files and smart contracts on the network services. The library exposes LiveContract's based on ABI and LiveJson's for simplifying the interactions with Smart Contracts and File Storage.

Create your Task

  • On task creation, the business critical data is stored on smart contracts, which encapsulate the core logic of the Taskbar app. See more on the smart contracts architecture here
  • Less critical task information is temporarily persisted on the Hedera File Storage.
  • Read more on the information stored on-chain and off-chain here

YBj3Ob.md.png

Find your Task

  • Finding a given task's data supposes finding the smart contract holding the requested information, as well as accessing the Hedera File Storage location of the task.

Yc7zqG.md.png

  • Future developments will make use of a Mirror Node and will index data to provide more a better experience when interacting with existing tasks.

Storing and Fetching Data on the IPFS network

  • A basic REST API that allows for storing and fetching data to and from the IPFS network
  • Uses web3storage to access Filecoin

YBDtat.md.png

Development Roadmap

  • Milestone 1 - completed

    • Finalize the requirements and specifications
    • Formulate all parameters of Transcript file along with their metadata
    • SDK hierarchy and initial setup
  1. Information on the specifications can be found at Milestone 1 - Wiki
  2. Initial setup project along with example can be found in this repository
  • Milestone 2 - completed

    • SDK – Hedera HFS integration
    • SDK – Integration with Hedera smart contracts
    • SDK - Integration with Filecoin web3.storage for transcript storage
    • Frontend development

Please find a description of the future Milestones here

📝 License

GNU General Public License v3.0 or later

See LICENSE to see the full text.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •