Skip to content

Files

Latest commit

 

History

History

counterfactual

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Counterfactual Account Demo

Example demos of counterfactual accounts

Demo6

NOTE: This is a work-in-progress.

Demo steps

  • Alice registers with hub like any other web2 provider (email/password, Google OAuth)
  • After logged in, hub generates contract address using create2 and displays on Alice’s page
  • Alice’s page shows contract deployed status : “not deployed”
  • Alice logs out
  • Alice clicks lost password (web2 style - she is emailed a new password link)
  • Alice is logged back in
  • Bob sends her 20 ETH
  • Alice’s page shows she has twenty ETH
  • Alice’s “send 1 ETH to Charlie button” becomes active
  • Hub deploys contract, pays gas fee but deployed contract allows hub gas refund
  • Alice’s page shows contract deployed status : “active” (use web3.getCode)
  • Show that Charlie has 1 ETH
  • Alice’s page shows 18.xx (new ETH total after sending Charlie 1 ETH and paying for gas)
  • Alice logs out

Instructions

Create local module symlinks (must do this after ever npm install)

make link

Start parity client

make start/parity

Test contracts

make test/contracts

Deploy contracts

make deploy/contracts

Start hub

make start/hub

Build loopback client for frontend

make build/client/loopback

Start frontend

start/frontend

TODO

  • clean up

License

MIT