Skip to content
This repository was archived by the owner on Jul 19, 2019. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Zeppelin Basil _(basil)_

[![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme)

> Sample Dapp built on top of ZeppelinOS

This project presents a basic contract `Basil.sol` and then uses `zos` to upgrade the contract to `BasilERC721.sol` using a proxy that preserves the original contract's state, while mutating its logic. The upgraded contract also makes use of ZeppelinOS' on-chain standard library, connecting to a proxy of the `MintableERC721Token` implementation of the `openzeppelin-zos` release.

As for functionality, the Dapp allows users to change the light color of a Basil plant, using an Arduino and an RGB wifi light bulb. The upgraded contract also emits an ERC721 non fungible token to the user.

Please see [docs.zeppelinos.org](https://docs.zeppelinos.org/docs/basil.html) for information.

## Install

To execute the app locally, run:

```
npm install && npx truffle compile && npm start
```

This will start a dev sever at `localhost:3000`. The application will connect to the ropsten network and link to a deployed version of Basil.

## Usage

Install the MetaMask extension on your browser and open `localhost:3000`. Make sure that your account is unlocked and pointing to the ropsten network.

## Develop

To execute the app locally on the development network, first set the value of `ACTIVE_NETWORK` in `src/js/constants.js` to `config.networks.development`.

Then, run the same commands from the install section.

Next, start the ganache personal blockchain with:

```
ganache-cli --deterministic
```

Finally, deploy the contracts to this blockchain running:

```
npm run deploy
```

If you have problems with an account not being recognized, change the used account address in `package.json`'s deploy script.
21 changes: 0 additions & 21 deletions readme.md

This file was deleted.