Skip to content

ConsenSysMesh/Stow-Smart-Contracts

Repository files navigation

Stow Smart Contracts NPM Package Build Status Coverage Status


⚠️ WIP

Smart Contracts for Stow

DEPLOYED CONTACTS

Overview

Stow Users

A contract that keeps a registry of registered users and their provenance.

Stow Records

A contract that keeps a registry of metadata of uploaded medical records, as well as the IRIS score of those records. The metadata makes records easily searchable.

Recieving Tokens when adding Stow records

When a person uploads data, 1 Finney STOW token is transferred from the Stow admin pool/acct to the user’s address. Currently no data validation needed.

1 Finney of STOW tokens per upload for now.

Stow Permissions

A contract that keeps a registry of permissions. Permissions include who can view what data, and where the permissioned copy is stored on IPFS.

Stow Overall Architecture

Stow architecture

Getting started

Prerequisites

  • Node.js
  • Node Package Manager

Clone the repository

$ git clone https://github.com/ConsenSys/Stow-Smart-Contracts.git

Install the dependencies

$ npm install

Deploying

npm run migrate

Testing

To run tests with coverage

npm run coverage

To run tests without coverage

  • First start testrpc with npm start
    • Alternatively you can run Ganache GUI at port 7545 with network id 5777
  • Run npm test

Video to Help You Get Started

Video to Get You Started with Stow Smart Contract

Contributing

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