This project showcases the journey of tea on blockchain.
- Low shipment visibility
- Slow process and error prone paperwork
- Lack of coordination
- We have implemented smart contract addressing the issue of storing critical data necessary at different stages of supplychain and making it verifiable by all stakeholders in supplychain.
- Reduced paperwork and fast process
- Seamless collaboration between all parties
- Admin
- Farm-Inspector
- Harvester
- Exporter
- Importer
- Processor
Admin : Admin creates new batch which is initial stage of tea batch.
Farm-Inspector : Farm-inspectors are responsible for inspecting tea farms and updating the information like tea family, type of seed and fertilizers used for growing tea.
Harvester : Harvesters conducting plucking, hulling , polishing , grading and sorting activities, further updating the information of crop variety, temperature used and humidity maintained during the process.
Exporter : Exporters are the organization who exports tea beans throughout the world. Exporter adds quantity, destination address, ship name, ship number , estimated date and time and exporter id.
Importer : Importers imports the tea from tea suppliers and updates quantity, ship name, ship number , transporters information, warehouse name, warehouse address and the importer's address.
Processor : Processors are the organizations who processes raw tea beans by roasting them on particular temperature and humidity and makes it ready for packaging and to sale into markets. Processor adds the information like quantity, temperature , roasting duration , internal batch number , packaging date time, processor name and processor address.
- Solidity (Ethereum)
- Metamask (Ethereum wallet)
- Truffle
- Web3JS
- Apache and PHP
- Nodejs v10.19.0 or above
- Truffle v5.1.46 (http://truffleframework.com/docs/getting_started/installation)
- Solidity v0.4.23
- Metamask (https://metamask.io) /Ganache Wallet
Setting up Ethereum Smart Contract:
git clone https://github.com/nikhil6418/tea-supplychain-ethereum-master
cd tea-supplychain-ethereum/
**Update truffle.js **
var HDWalletProvider = require("truffle-hdwallet-provider");
module.exports =
{
networks:
{
development:
{
host: "localhost",
port: 8545,
network_id: "*" // Match any network id
}
}
};
Go to your project folder in terminal then execute :
rm -rf build/
truffle compile
npm install truffle-hdwallet-provider
truffle migrate --network development reset