A development environment, testing framework, and origination pipeline focused solely on Tezos!
594

Chinstrap is a development environment, testing framework, and asset pipeline focused solely on Tezos, aiming to become Swiss-Army-Knife for Tezos Smart Contract developers.
Chinstrap makes Tezos developers' life easy by providing support for multiple contract compilations, tests, and originations on many public and private Tezos networks.
Chinstrap offers:
Python and testing with pytestHere are some reasons why I built Chinstrap:
Python, SmartPyPython$ brew tap cuber/homebrew-libsecp256k1
$ brew install libsodium libsecp256k1 gmp
$ pip3 install chinstrap
or
git clone https://github.com/ant4g0nist/chinstrap
cd chinstrap
python3 setup.py install
or using Docker image available at https://hub.docker.com/r/ant4g0nist/chinstrap/tags
docker pull ant4g0nist/chinstrap
docker run -v /var/run/docker.sock:/var/run/docker.sock -v `pwd`:/home --rm -it ant4g0nist/chinstrap
or using Dockerfile from the repo
git clone https://github.com/ant4g0nist/chinstrap
cd chinstrap
export image=chinstrap
docker build -f dockerfiles/Dockerfile.local -t $image .
docker run -v /var/run/docker.sock:/var/run/docker.sock -v `pwd`:/home --rm -it $image
Note: For using docker, the Chinstrap proejct directory needs to be shared with the Docker.
if you installed chinstrap with pip3
pip3 install -U chinstrap
$ chinstrap
_ _ _
___| |__ (_)_ __ ___| |_ _ __ __ _ _ __
/ __| '_ \| | '_ \/ __| __| '__/ _` | '_ \
| (__| | | | | | | \__ \ |_| | | (_| | |_) |
\___|_| |_|_|_| |_|___/\__|_| \__,_| .__/
|_|
usage: main.py [-h] [--init] [--compile] [--create] [--debug] [--templates] [--develop] [--originate] [--reset] [--network NETWORK] [--test TEST] [--sandbox] [--sandbox-stop] [--sandbox-detach]
[--sandbox-port SANDBOX_PORT] [--sandbox-protocol SANDBOX_PROTOCOL] [--accounts ACCOUNTS] [--account-balance ACCOUNT_BALANCE] [--version]
Chinstrap - a cute framework for developing Tezos Smart Contracts
optional arguments:
-h, --help show this help message and exit
--init Initialize new and empty Tezos SmartPy project
--compile Compile contract source files
--create Helper to create new contracts, origination and tests
--debug Interactively debug contracts.
--templates Download from templates provided SmartPy
--develop Open a console with a local development blockchain
--originate Run originations to deploy contracts
--reset Run originations to deploy contracts
--network NETWORK Show addresses for deployed contracts on each network
--test TEST Run [smartpy] or [pytest] tests.
--sandbox Start a Tezos local sandbox
--sandbox-stop Tezos local sandbox's RPC Port
--sandbox-detach Start a Tezos local sandbox and detach
--sandbox-port SANDBOX_PORT
Tezos local sandbox's RPC Port
--sandbox-protocol SANDBOX_PROTOCOL
Tezos local sandbox's RPC Port
--accounts ACCOUNTS Number of accounts to bootstrap on Tezos local sandbox
--account-balance ACCOUNT_BALANCE
Amount of Tezos to deposit while bootstraping on Tezos local sandbox
--version Show version number and exit
To compile the smart contracts:
$ chinstrap --compile
To originate (deploy) the smart contracts:
$ chinstrap --originate --network florencenet
To re-originate (reset and deploy again) the smart contracts:
$ chinstrap --originate --network florencenet --reset
To start the local Flextesa sandbox:
$ chinstrap --sandbox
To start the chinstrap repl (debug):
$ chinstrap --debug --network florencenet
To download template contracts provided Smartpy:
$ chinstrap --templates
Content type
Image
Digest
Size
566.2 MB
Last updated
over 4 years ago
docker pull ant4g0nist/chinstrap