GithubHelp home page GithubHelp logo

eth-ipfs's Introduction

eth-ipfs: ETH Simple Storage dApp + InterPlanetary File System (IPFS)+ React.js

A simple DApp to upload a media, files & documents to IPFS & persist IPFS hash on the Ethereum blockchain.

Once the IPFS hash number is sent to the Ethereum blockchain, the user will receive a transaction receipt. We will use Create-React-App framework to make a front-end.

This Dapp works with any user that has MetaMask installed in their browser.

Simple steps for setup

1. Clone/Pull the repo & install deps

$ npm install

to setup the node module dependencies.

2. IPFS configuration

Install ipfs for your machine from ipfs.io & start the IPFS daemon.

$ ipfs daemon

PS: If you're doing step 2 for the first time, you may want to initiate minimal config at ~/.ipfs/ by doing this:

$ ipfs init

3. Blockchain configuration

We are currently using Ethereum blockchain clients to demonstrate the persistence of IPFS hashes. If you're looking for a hassle-free minimal setup, you may install Ganache & initiate a private chain with custom port on the host.

Deploy this simple storage contract on Remix IDE(https://remix.ethereum.org/) and update the same value for the constant variable address here.

PS: In case of private ethereum networks, be sure to update the web3 definition values in the src/web3.js with const web3 = new Web3(new Web3.providers.HttpProvider("http://<<HOST-IP>>:<<PORT>>"));

3. Browser setup

Once setup, add an account from the Ganache/Blockchain net of your choice to Metamask. You may install metamask for Firefox, Opera, Chrome.

You may also try Brave Browser with some of the coolest built-in supports like Metamask, IPFS Browser etc..

4. Run ๐Ÿš€

Once all setup, run the npm script:

$ npm run start

Voila

Contribution

Original Work: This is a proud work by MICHAEL CHAN @mcchan1 ๐Ÿ’š๐Ÿ†๐Ÿ™

Derivative Work: eth-ipfs is adding a few new features & thanks to contributors:

eth-ipfs's People

Contributors

mcchan1 avatar

Watchers

James Cloos avatar

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.