This project covers the creation of multiple participants creating a coffee batch in conjuntion, then selle it to a coffee roaster participant. In the roast process you usually combine different grain batches, so the code takes that into consideration to be able to provide which percentage of the final result belongs to the original producers.
Here's a diagram explaining the overall process
This awesome project was created automatically with Convector CLI. By default new Convector projects locally include Hurley to manage your development environment seamlessly, so you don't have to worry about setting up the network and hard ways to install and upgrade your chaincodes.
# Install dependencies - From the root of your project
npm i
# Create a new development blockchain network - From the root of your project
npm run env:restart
# Install your smart contract
npm run cc:start -- coffee
# Run the end-to-end tests invoking the ledger
npm run test:e2e
You may as well install Hurley globally for easier and more flexible management.
npm i -g @worldsibu/hurley
Since with Hurley globally you have control over everything, some things that you can do, for example, is installing a Convector Smart Contract with a different name than the one you used for your project.
# Use the same package
# Install a new chaincode with the same source code but the name 'anothernameforyourcc'
hurl install anothernameforyourcc node
Other complex tasks you may need is installing to a different channel.
# Use the same package
# Be sure you started your environment with more than one channel running 'hurl new --channels 2'. Otherwise this will throw an error.
hurl install anothernameforyourcc node --channel ch2
If you don't want to, don't worries! This project works right away.
# Install dependencies - From the root of your project
npm i
# Create a new development blockchain network - From the root of your project
hurl new
# Package your smart contract's code - From the root of your project
npm run cc:package -- coffee org1
# Install to your blockchain - From the root of your project
hurl install coffee node -P ./chaincode-coffee
# Install in debug mode, this will run the chaincode server locally so you can debug
hurl install coffee node -P ./chaincode-coffee --debug
# Upgrade your existing chaincode - From the root of your project
hurl upgrade coffee node 1.2 -P ./chaincode-coffee
# Install dependencies - From the root of your project
npm i
# Create a new development blockchain network - From the root of your project
npm run env:restart
# Install to your blockchain - From the root of your project
npm run cc:start -- coffee
# Upgrade your existing chaincode - From the root of your project
npm run cc:upgrade -- coffee 1.2
npm run test
npm run test:e2e
Check all the information to work with Convector in the DOCS site.