Giter VIP home page Giter VIP logo

ethereum-data-share's Introduction

Ethereum File Share Client · GitHub license

Check out the demo on youtube

An awesome project to upload data on a website and authenticating it through ethereum smart contracts!
This project is a proof of concept for storing University Transcripts on Blockchain.
View Demo · Report Bug

Table of Contents

About The Project

This project uses React.JS for front end and Ethereum smart contracts for storing the data on a blockchain. Below is the entire process from entering data to uploading it to a private Blockchain and displaying it on a website

  • Admin Panel Login: First you enter a password to log into the system to input data.
  • Adding Data: You input the transcript data into respective fields.
  • Submitting: After adding data, once you click on the submit button, the server uploads the data to a private Ethereum Blockchain using Ganache.
  • Logging Into View: Once the data is uploaded successfully, you log into a separate website with a password to view it.
  • Fetching Data: On login the client fetches data and populates the fields.
  • Updating: Data can be updated on the Blockchain through the admin panel and once confirmation notification is received, the new data can be fetched via the update button on the view window.

Built With

This project uses the following software and languages

Getting Started

These instructions will get you 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

Here is the list of all the prerequisites you would need to install on your system in order to run this device

  • Node.js v10.15.3
https://nodejs.org/en/download/
  • npm
https://www.npmjs.com/get-npm
  • Truffle
https://www.trufflesuite.com
  • Additional build tools are required to be able to run this project on windows. Run these commands from an administrative shell to install software dependencies:

    Note: You need to install windows build tools version 4.0 or higher

npm install --global --production windows-build-tools
npm install -g node-gyp

Installation

  1. Add all dependencies using npm

    npm install
  2. Open Ganache and run a private Blockchain

  3. Run Truffle to add smart contract to the Blockchain

    truffle migrate --reset

    You will get the following feedback from console:

    Port Image

  4. Run server to start the React.JS client

    npm start

Note: You need to keep running Ganache for the app to work. Please go through the deployment below to start using your client.

Deployment

Run

npm build

You need to connect to Rinkeby or Ropsten test network if you do not want to spend any money on Ethereum smart contracts via the Mainnet.

Demo and Description

Check out the demo on youtube here - View Demo

Author

License

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

Acknowledgments

  • Boilerplate - Boilerplate for React.JS + Ethereum + Truffle project.

ethereum-data-share's People

Contributors

jaykch avatar

Stargazers

Vani11a avatar  avatar

Watchers

James Cloos avatar  avatar

ethereum-data-share's Issues

and fetch data

fetchData = (e) => {
if (e) {
e.preventDefault();
}
this.state.contract.methods.get().call().then((v) => {
console.log("Data fetched from Blockchain...");
this.setState({data: v, status: "Data Loaded!"});
console.log(this.state.data);
ToastsStore.success("Data fetched successfully!");
});
};

please help

store and fetch data error

image

this.state.contract.methods.set(this.state.data).send({from: this.state.account}).on("confirmation", (r) => {
console.log("Data stored on Blockchain...");
ToastsStore.success("Data stored successfully!");
});
};
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.