CollabChain is an onchain collaborative planning platform for supply chain partners to coordinate promotions, product launches, and data sharing agreements using smart contracts.
contracts/: Contains Solidity smart contracts for blockchain functionality.backend/: Python Flask backend to interact with the blockchain.frontend/: HTML, CSS, and JavaScript for the user interface.test/: Testing files for smart contracts and backend.
- Python 3.x
- Node.js and npm
- MetaMask wallet
-
Navigate to the
backenddirectory:cd backend -
Install the required Python packages:
pip install -r requirements.txt
-
Run the Flask server:
python app.py
- Navigate to the root directory and open
index.htmlin your browser.
- Use Remix IDE or Hardhat to deploy
EventContract.solandDataAgreementContract.solto the Base Sepolia testnet.
- Contract Addresses: Update
event_contract_addressandagreement_contract_addressinbackend/app.pywith the deployed contract addresses. - Provider URL: Update the Base Sepolia testnet URL in
backend/config.py. - Wallet Setup: Use MetaMask to connect to the Base Sepolia testnet and obtain some test ETH from a faucet for transaction fees.
-
Run the tests for smart contracts:
brownie test -
Run the Flask tests:
pytest ../test/test_flask_app.py
- Create and manage events onchain.
- Propose and accept data sharing agreements securely.
Contributions are welcome. Please fork the repository and submit a pull request.
MIT License