Skip to content

ZhectorSM/web3-wheels-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web3Wheels

Description

Web3Wheels is a decentralized autonomous Uber service utilizing blockchain and AI technologies. Users can mint, own, and trade self-driving car NFTs. Real-time data and smart contracts ensure transparency, efficiency, and a seamless user experience.

Live Demo

App: https://web3-wheels-app.vercel.app/
BackendAPI: https://web3-wheels-service.vercel.app/vehicles/

Table of Contents

Installation

Prerequisites

  • MetaMask for interacting with the Ethereum blockchain.
  • Remix.ethereum.org for deploying smart contracts.

Steps

  1. Clone the repository:

    git clone https://github.com/ZhectorSM/web3-wheels.git
    cd web3-wheels
  2. Install dependencies:

    npm install
  3. Deploy Smart Contracts using Remix:

    • Open Remix.ethereum.org.
    • Import the smart contract files from the contracts directory.
    • Compile and deploy the smart contracts using MetaMask to connect to an Ethereum testnet (e.g., Ropsten or Rinkeby).
  4. Update Contract Addresses:

    • After deploying the contracts, update the contract addresses in the frontend configuration files.
  5. Start the frontend application:

    npm start

Usage

Minting Cars

  1. Open the application in your browser.
  2. Connect your MetaMask wallet.
  3. Use the interface to mint a new car NFT with 0km.

Buying Cars

  1. Browse available car NFTs in the TokenShop.
  2. Purchase a car NFT using your MetaMask wallet.

Ride Requests

  1. Request a ride specifying your requirements.
  2. The AI agent will match you with an available self-driving car.

Architecture

Overview

Web3Wheels comprises the following components:

  • Frontend: A web application for user interaction.
  • Smart Contracts: Manage vehicle minting NFTs, ownership, and transactions.
  • Backend: Handles data processing and AI integration.
  • AI Module: Autonomous decision-making for self-driving cars. Processes ride requests and optimizes routes.
  • Chainlink: Fetches datafeeds, verifies dealer legitimacy and pull data from an API

Overview

On/Off Chain

Components

Data Flow

Data Flow

Diagrams

https://www.canva.com/design/DAGDwoF3eh8/LorvlEGzAxx7BUwxNWLtTQ/view?utm_content=DAGDwoF3eh8&utm_campaign=designshare&utm_medium=link&utm_source=editor

SmartContracts

SEPOLIA

Smart Contracts

Additional Information

Technologies

Technologies

Sponsors bounties

SCROLL

Note. The smart contracts are deployed and verified. We have some limitations with chainlink integration products (Functions, Automation) and compatibility issues with PUSH0(0x5f) opcode to have a fully functional flow.

DEXTOOLS

Workflow

This project uses GitHub Actions for CI/CD. The workflow checks licenses, runs linting, and tests the code on each push and pull request.

License

The code in this project is licensed under the MIT License. See the LICENSE file for more information.

Resources

https://github.com/smartcontractkit/hardhat-starter-kit.git (Updated to ethers-v6)

https://github.com/tomhirst/solidity-nextjs-starter.git

About

Welcome to the decentralized autonomous vehicles (DAV) project!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published