Skip to content

linux08/supply_chain

Repository files navigation

Supply chain & data auditing

This repository containts an Ethereum DApp that demonstrates a Supply Chain flow between a Seller and Buyer. The user story is similar to any commonly used supply chain process. A Seller can add items to the inventory system stored in the blockchain. A Buyer can purchase such items from the inventory system. Additionally a Seller can mark an item as Shipped, and similarly a Buyer can mark an item as Received.

Getting Started

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.

Prerequisites

Please make sure you've already installed ganache-cli, Truffle and enabled MetaMask extension in your browser.

Give examples (to be clarified)

Installing

The starter code is written for Solidity v0.4.24. At the time of writing, the current Truffle v5 comes with Solidity v0.5 that requires function mutability and visibility to be specified (please refer to Solidity documentation for more details). To use this starter code, please run npm i -g truffle@4.1.14 to install Truffle v4 with Solidity v0.4.24.

A step by step series of examples that tell you have to get a development env running

Clone this repository:

git clone https://github.com/udacity/nd1309/tree/master/course-5/project-6

Change directory to project-6 folder and install all requisite npm packages (as listed in package.json):

cd project-6
npm install

Launch Ganache:

ganache-cli -m "spirit supply whale amount human item harsh scare congress discover talent hamster"

Your terminal should look something like this:

truffle test

In a separate terminal window, Compile smart contracts:

truffle compile

This will create the smart contract artifacts in folder build\contracts.

Migrate smart contracts to the locally running blockchain, ganache-cli:

truffle migrate

Your terminal should look something like this:

truffle test

Test smart contracts:

truffle test

All 10 tests should pass.

truffle test

In a separate terminal window, launch the DApp:

npm run dev

Built With

  • Ethereum - Ethereum is a decentralized platform that runs smart contracts
  • IPFS - IPFS is the Distributed Web | A peer-to-peer hypermedia protocol to make the web faster, safer, and more open.
  • Truffle Framework - Truffle is the most popular development framework for Ethereum with a mission to make your life a whole lot easier.

Authors

See also the list of contributors who participated in this project.

Acknowledgments

  • Solidity

  • Ganache-cli

  • Truffle

  • Draw.io

Project summary

The goal of the project is to build a supply chain management system with right access control which are found in contracts/coffeeaccesscontrol to move goods right from when the farmer is harvesting is item upp until when the consumer gets it which operations are present in coffeebase/SupplyCahin.sol

The UML for this project can be found in the UML folder Activity Data Sequence State

Versions

Package Version
Truffle v5.5.29 (core: 5.5.29)
Solidity 0.8.1 (solc-js)
Node v18
Web3.js v1.8.0

Contract Address

contract address: 0x23A2426fF33E2E044D18e1457a85d49E0E140357

Token Address

https://goerli.etherscan.io/token/0x23A2426fF33E2E044D18e1457a85d49E0E140357

Transaction hash

https://goerli.etherscan.io/tx/0xd4f32a9a2c5a74a074897a620dbe227cf441aefca665ec1bfef2e10824c0635d

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published