GithubHelp home page GithubHelp logo

ETH-Hot-Wallet

Ethereum wallet with ERC20 support / web wallet

eth-hot-wallet ethereum wallet preview

https://eth-hot-wallet.com

Work in progress

Created by Paul Laux, @dr_laux for announcements

Core components

API Providers

Features

  • Encryption keys generated from seed and stored in the browser.
  • Network selector including local and remote rpc
  • Eth balance auto converted to btc/usd/euro.
  • Responsive design for mobile support.

ERC20 wallet and native token support

Eth-hot-wallet supports erc20 tokens. From the user side, the tokens will have the same look and feel like Ether. To interact with contracts, we use

web3.eth.contract(erc20Abi)

Like all other network communication in the wallet, calls to erc20 contracts are done inside app/containers/Header/saga.js. ERC20 Abi can be imported using

import { erc20Abi } from 'utils/contracts/abi';

Todo

  • ERC20 native token support
  • Local storage
  • Tests
  • Event log
  • CI for development and production
  • External security audit
  • Upgrade to react 16
  • Upgrade Enzyme 3

Development

4 Major containers were created:

  • Homepage container - all the actions related to keystore, including manipulation and usage.

  • Header container - all the activities related to network communication / web3 API.

  • SendTo container - state and actions related to sendTo modal, actual checks and sending is happening in header container.

eth-hot-wallet send token preview

  • TokenChooser container - allows the user to select which erc20 token will be used from a pre-defined list. The list of supported tokens can be found in app/containers/TokenChooser/token-lists.js. Each network requires a different list.

eth-hot-wallet erc20 token chooser preview

npm scripts for eth-hot wallet:

npm run build:dll to build webpack DLL required for development.

npm run start to start development mode. Go to http://localhost:3001 - changes will be reflected in realtime using hot module reloading.

npm run build to create bundle for publishing

npm run generate to create new components / containers using the generator.

For more documentation regarding the react setup see react-boiledplate docs here or in the official repo.

After build, webpack monitor will generate stats about bundle size:

eth-hot-wallet webpack-monitor

License

This project is licensed under the MIT license, Copyright (c) 2017 Paul Laux For more information see LICENSE.md.

neurale's Projects

tetnet icon tetnet

TetNet is an application that uses genetic algorithms to create an evolving Tetris AI.

universe icon universe

Universe: a software platform for measuring and training an AI's general intelligence across the world's supply of games, websites and other applications.

utt icon utt

Lightweight and efficient MQTT broker prototype (experimental taste test, not developed)

webdb icon webdb

Javascript library to use HTML5 database engines IndexedDB and WebSql in an agnostic way.

website icon website

IPFS project website -- see ipfs/ipfs for entrypoint

webui icon webui

A frontend for an IPFS node.

xorro icon xorro

A Bit-Torrent-Like P2P File Transfer System using Ruby

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.