OpenST Contracts is a collection of smart contracts that enable developers to program Token Economies.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Project requires node and npm to be installed on dev machine.
In case of fresh clone, use --recursive-submodules option while cloning:
git clone --recursive-submodules [email protected]:openst/openst-contracts.gitTo update git submodules for already cloned repos, run:
git submodule update --init --recursiveInstall npm packages, by running:
npm installAfterwards, add ./node_modules/.bin to PATH environment variable:
export PATH=./node_modules/.bin:${PATH}The following npm script compiles updated contracts from the last call:
npm run compile, to compile all contracts, run:
npm run compile-allIn openst-contracts to lint solidity files we use Ethlint.
The following npm script lints all contracts within ./contracts directory:
npm run lint:solEthlint is able to fix a subset of rules.
The following npm script fixes (only a subset of rules) contracts within ./contracts directory:
npm run lint:sol:fixESLint is used to lint js files.
To lint all js files within ./test directory, run:
npm run lint:jsESLint is able to fix a subset of rules. To fix js files, run:
npm run lint:js:fixBefore running the tests run ganache-cli by:
npm run ganache-cliRun tests by calling:
npm run testPlease read CODE_OF_CONDUCT.md for details on our code of conduct, and the process for submitting pull requests to us.
We use SemVer for versioning. For the versions available, see the tags on this repository.
See also the list of contributors who participated in this project.
This contracts are licensed under the Apache License Version 2.0 - see the LICENSE.md file for details.