Skip to content

ChainCare is a health information system that uses smart contracts to handle medical procedures and stores the medical history in Block Chains.

Notifications You must be signed in to change notification settings

Dina-Hosny/ChainCare

Repository files navigation

ChainCare

ChainCare is a health information system that uses smart contracts to handle medical procedures and stores the medical history in Block Chains.

Features

This system provides a whole medical history of the patient since the subscribing to it, also a professional history for doctors and lab doctors. The generated data are stored automatically in electronic records forms ledgers by a blockchain platform which makes it secured and well managed. The users will be able to leverage their medical data to power many applications and services.

  • Critical information is stored significantly in End-to-End encrypted records using BlockChain -Ethereum- that makes it difficult or impossible to change, or hack.
  • Provides user’s privacy by managing permissions guarantee preventing unauthorized access.
  • Provides high availability of information as it is stored in Block Chain which is can be accessed remotely.
  • Information is organized in a time-variant and non-volatile way.
  • Enables disease prediction according to the user's entered symptoms.
  • Allows users to monitor other users' accounts for special cases.
  • Allows users to share records with medical staff or other users.
  • The system's admin can provide analytical reports and statics for a specific number of medical records.
  • The system's admin can add medical staff and Assign patients to specific doctors.
  • The system's admin can monitor the medical staff's activities.
  • Doctors can provide full professional history for them.
  • Doctors can provide an overview of the patient’s situation.
  • Lab staff can allow remotely receiving required medical tests and uploading the results.

Demo

System's features preview:

System.s.features.preview.mp4

System's preview:

system.s.preview.mp4

API & Database:

API-storj.Database.mp4

Ganache workspace (for testing Data):

Ganache-.test.accounts.mp4

Tech Stack

Interface:

  • HTML, CSS, JavaScript
  • React JS (JS framework to develop web applications)
  • Node.js, Npm
  • Web3.js (JS library to communicate with smart contract)
  • Ethers.js (JS library to communicate with smart contract)
  • Truffle (Essential tool for building dapp/smart contract)
  • Ethereum (Create a decentralized public blockchain)
  • Solidity programming languages
  • Ganache (Create testing accounts)
  • Metamask Wallet Chrome Extension (Allow to connect to the Ethereum network, Ethereum localhost, and Ethereum test nets)
  • Infura - Ethereum API (for testnets and mainnet)
  • Hardhat - Ethereum development environment for professional
  • Waffle - smart contract testing
  • IPFs (Store and access files of the generated blocks)

API-DataBase:

  • Storj Crypto API
  • GOLANG
  • GORM (GOLANG library for communicating with database)
  • Big Chain
  • PostgreSQL (Database (storing data))
  • Env vars (Storing sensitive information)
  • Gorilla/Mux (GOLANG library to serve APIs)
  • Postman (Test API)
  • Insomnia (Test API)

For more information about the system, implementation, and technologies: