Skip to content

curedao/digital-twin-safe

Β 
Β 

Repository files navigation

πŸ‘¨β€πŸ€β€πŸ‘¨ The Digital Twin Safe πŸ”’

A little house for your digital twin. 🏑

human-file-system-banner-logo

Import data from all your apps and wearables so you can centrally own, control, and share all your digital exhaust.

Try it out at humanfs.io!

For support requests, please open up a bug issue or reach out via Discord.

Based on the awesome Gnosis Safe, the most trusted platform to store digital assets on Ethereum.

The Human File System SDK

A Simple API for Patient-Controlled Health Data Aggregation, Sharing, and Monetization

The Human File System Collective Superteam DAO is a collective of separate HackFS teams cooperating to accelerating clinical discovery and reduce suffering.

Together, we are creating a set of interoperable software libraries that can be used independently to create user-accesss controlled digital twins on the blockchain.

The libaries can be used independently, but will all be included in the HumanFS SDK.

❓ Why in the hell are you doing this?

There are 350k health apps containing various types of symptom and factor data. However, the isolated data's relatively useless in all these silos. In order to make clinical discoveries, all the factor data needs to be combined with the outcome data.

Web2 Problem

The web2 solution to combining all this data is a nightmare of

  1. creating thousands of OAuth2 data connectors
  2. running a bunch of importer cron jobs on AWS.

Web3 Solution

User auth/databases/key management/access control/3rd party OAuth tokens abstracted away by a single, easy-to-use API

i.e.

Pain Tracking App A:

db.collections.create('Arthritis Severity', timeSeriesData);

Diet-Tracking App B:

let timeSeriesData = db.collections.get('Arthritis Severity');

β‡’ Making it possible for Diet-Tracking App B (and/or Pain Tracking App A) to easily analyze the relationship between dietary factors and Arthritis Severity using causal inference predictive model control recurrent neural networks.

🌈 Get Involved

Join us on Discord!

Overview

digital-twin-safe-screenshot-home

Variables

digital-twin-safe-screenshot-variables

Data Sources

digital-twin-safe-screenshot-data-sources

πŸ“š Libraries Used

Data Storage, Authorization and Sharing - Lit Programmable Key Pairs (PKPs) for access control over protected health information (PHI) with data storage on Ceramic. XMTP (Extensible Message Transport Protocol) is an open protocol and network for secure, private messaging between patients and physicians.

Libraries TODO

  • Zero Knowledge Unique Patient Identifier Key in a Soul Bound NFT - For patients, owning an NFT of their medical data would be like creating a sentry to guard that personal information. The NFT would act as a gatekeeper, tracking who requested access, who was granted access, and whenβ€”and record all those actions publicly.
  • Federated Learning - Fluence to perform decentralized analysis of human generated data from applications and backends on peer-to-peer networks
  • Proof of Humanity - The Proof of Attendance Protocol for Sybil Resistant data collection, ensuring that robots aren't selling fake health data.
  • Reward open-source health innovation - Valist to reward public good open-source health technology innovations using Software License NFTs and proof of open-source contribution.
  • Querying specific health data - Tableland for querying the HumanFS for specific data types and time periods.
  • NFT Health Data Marketplace - NFTPort for minting data sets that can be sold to pharmaceutical companies in a health data marketplace.
  • On-Chain Analytics - Covalent for Health Data NFT marketplaces, On-Chain Analytics / Dashboards, Health Data Wallets, Health Data Asset tracking, and ROI for NFT generation and sales.

For technical information please refer to the Gnosis Safe Developer Portal.

Getting Started

These instructions will help you get a copy of the project up and running on your local machine for development and testing purposes. See Deployment for notes on how to deploy the project on a live system.

Prerequisites

We use yarn in our infrastructure, so we decided to go with yarn in the README. Please install yarn globally if you haven't already.

Environment variables

The app grabs environment variables from the .env file. Copy our template to your own local file:

cp .env.example .env

To execute transactions, you'll need to create an Infura project and set the project ID in the .env you've just created:

REACT_APP_INFURA_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Once done, you'll need to restart the app if it's already running.

Installing and running

Install dependencies for the project:

yarn install

To launch the dev version of the app locally:

yarn start

Alternatively, to run the production version of the app:

yarn build
mv build app
python -m SimpleHTTPServer 3000

And open http://localhost:3000/app in the browser.

Docker

If you prefer to use Docker:

docker-compose build && docker-compose up

Building

To get a complete bundle using the current configuration use:

yarn build

Running the tests

To run the tests:

yarn test

Lint

ESLint will be run automatically before you commit. To run it manually:

yarn lint:fix

Deployment

Dev & staging

The code is deployed to a testing website automatically on each push via a GitHub Action. The GitHub Action will create a new subdomain and post the link as a comment in the PR.

When pushing to the main branch, the code will be automatically deployed to staging.

Production

Deployment to production is done manually. Please see the release procedure notes for details.

Built With

app diagram

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

Import data from all your apps and wearables so you can centrally own, control, and share all your digital exhaust.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 95.4%
  • JavaScript 3.7%
  • SCSS 0.4%
  • HTML 0.2%
  • Solidity 0.2%
  • Shell 0.1%