Plasma Cash Contract & Client. ERC721, ERC20, and ETH compatible
Clone or download
Latest commit 614a374 Nov 23, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
loom_test Fix test Nov 20, 2018
server Remove redundant write to storage Nov 23, 2018
.gitattributes Initial commit May 12, 2018
.gitignore Update gitignore Nov 13, 2018
FullSpec.md update docs for validators Aug 10, 2018
License.md tweak licenses Nov 5, 2018
README.md Update README.md Nov 5, 2018
benchmark.sh adding basic benchmarking code Jun 21, 2018
jenkins.sh Merge branch 'master' into ui-ux-upgrades Nov 13, 2018
loom_integration_test.sh bump loom Nov 20, 2018

README.md

Plasma Cash - ERC721/ERC20/ETH Supported

Installation and Loom SDK integration

To see the integrations run against the Loom SDK you must download the loom SDK, refer to https://loomx.io/developers/docs/en/basic-install-osx.html.

Under the loom_test directory there are all the samples in Go, that directly interact with Loom SDK. If you have cloned the repo and go dependencies are not found, in loom_test try:

export GOPATH=$GOPATH:`pwd`

Demo Flow

  1. Alice registers and is given coins 1-5 from the token contract
  2. Alice deposits Coin 1, Coin 2, Coin 3 in the plasma chain
  3. 3 Deposit Blocks have been generated in the child chain, each one having 1 UTXO at slots 0,1,2 respectively
  4. Alice sends Coin 1 to Bob, adding the transaction to the current block.
  5. Operator calls submitBlock, checkpointing the block merkle root which includes the transaction that gives ownership to Charlie - At this point, both the child chain and the root chain, have checkpointed Alice's transaction at block number 1000.
  6. Bob transfers the previous UTXO to Charlie and the operator submits that block as well
  7. Charlie tries to exit Coin 1, Alice & Bob do not challenge
  8. After the challenge period passes, Charlie is able to withdraw his coin

Loom integration tests

cd server
npm install
npm run test
cd .. 

cd loom_test
make clean
make deps
make demos
make contracts
make test
cd ..

cd loom_js_test
yarn
yarn build
yarn copy-contracts
cd ..

LOOM_BIN=<ABSOLUTE_PATH_TO_LOOM> ./loom_integration_test.sh

License info

Please note different directories have different licenses. Please see license file in each folder respectively

All derivitive works of this code must incluse this copyright header on every file

// Copyright Loom Network 2018 - All rights reserved, Dual licensed on GPLV3
// Learn more about Loom DappChains at https://loomx.io
// All derivitive works of this code must incluse this copyright header on every file 
  • server directory -> GPLv3 License
  • loom_test directory -> Loom Public License License