react-ethereum-metacoin
a simple dapp
Overview
-
It is basically a decentralized dapp done using
react
andtruffle
that implements interface EIP20 as an ethereum smart contract (Solidity) -
Tokens in the ethereum ecosystem can represent any fungible tradable good:
coins
,loyalty points
,gold certificates
,IOUs
,in game items
, etc. Since all tokens implement some basic features in a standard way, this also means that it will be instantly compatible with the ethereum wallet and any other client or contract that uses the same standards. -
It makes some basic token transactions, transaction are ether free as of now.
-
It allows to transfer tokens from the coinbase ( initial supply 10000 ) and from differents accounts.
-
This one can be considered as opinionated versions of react-ethereum-dapp-template and truffle-webpack-demo, intended for personal purposes, PRs, feedback, stars ✭ and issue reporting, welcome.
Getting started
JSON-RPC node should be running and configured in truffle.js
.
It can be tested on Ropsten with Meta Mask
chrome extension or Mist
but I tried it in a local Ethereum node with JSON-RPC with ethereum-mocked listening at port 8545
or read about how to deploy a truffle contract to ropsten
- Install ganache-cli
npm install -g ganache-cli
# Using ganache-cli
ganache-cli
For more information about it see ganache-cli
Run the web server
- Node 8 LTS
- You can use yarn or npm
# Install dependencies
yarn
# Build Sol contracts into the Ethereum node
yarn contracts:build
# Build deploy contracts into node
yarn contracts:migrate
# Run the web server
yarn web
Dependencies
- react for building user interface
- react-native-web to handle native like components in the web
- react-broadcast to handle eficiently web3 in the component tree
- web3 as the Etherum Javascript API
- truffle to build an abstraction of smart contract token
- react-native-typography to define default styles in my components
Demo
TODO
-
Move to
web3
version 1.0.0-beta to create the instance of the contract and removetruffle-contract
dependency. -
Use token from ethpm and make migration from it instead.
License
MIT