Skip to content

MuffinsThaCat/DADI

Repository files navigation

DADI - Decentralized Auction for Device Interaction

A Flutter web application that enables decentralized auctions for device control using Ethereum smart contracts.

Prerequisites

Setup

  1. Clone the repository:
git clone https://github.com/MuffinsThaCat/DADI.git
cd DADI
  1. Install Node.js dependencies:
npm install
  1. Install Flutter dependencies:
flutter pub get
  1. Start a local Hardhat node:
npx hardhat node
  1. In a new terminal, deploy the smart contract:
npx hardhat run --network localhost scripts/deploy.js
  1. Configure MetaMask:
    • Add a new network with:
    • Import a test account using the private key from the Hardhat node output

Running the App

  1. Start the Flutter web app:
flutter run -d web-server --web-port=3001
  1. Open your browser and navigate to:
http://localhost:3001
  1. Connect MetaMask when prompted by the app

Features

  • Create auctions for device control
  • Place bids on active auctions
  • View auction history and status
  • Control devices during won time slots
  • Real-time updates using blockchain events

Development

  • Smart Contract: contracts/DADIAuction.sol
  • Flutter App: lib/ directory
    • Screens: lib/screens/
    • Services: lib/services/
    • Contract Bindings: lib/contracts/

Testing

Run smart contract tests:

npx hardhat test

Run Flutter tests:

flutter test

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors