Skip to content

atharvalade/AirSpace_ETHDenver

Repository files navigation

AirSpace: Blockchain-Powered Air Rights Marketplace

![AirSpace Logo]

AirSpace is the first blockchain-powered marketplace for buying, selling, and renting air rights. We're unlocking a multi-trillion dollar asset class by enabling property owners to tokenize the valuable space above their buildings, while helping hotels, developers, and businesses protect their views and secure development opportunities. Using verifiable credentials and privacy technology, we've transformed a complex legal process into a transparent, accessible marketplace.

πŸš€ Overview

Air rights represent the legal right to use, develop, or control the empty space above a property. These rights are traditionally difficult to trade due to complex legal processes and lack of transparency. AirSpace solves this by:

  1. Tokenizing Air Rights: Converting legal air rights into NFTs on the Flow blockchain
  2. Creating a Marketplace: Enabling easy buying, selling, and renting of these rights
  3. Ensuring Verification: Using zkSync and verifiable credentials to validate ownership
  4. Simplifying Transactions: Streamlining a complex legal process into a user-friendly platform

πŸ› οΈ Technology Stack

AirSpace leverages cutting-edge blockchain and Web3 technologies:

Flow Blockchain & Cadence

  • NFT Minting: Air rights are represented as NFTs on the Flow blockchain
  • Smart Contracts: Written in Cadence, Flow's resource-oriented programming language
  • Metadata Storage: Comprehensive property details stored on-chain
  • Transaction Management: Secure and efficient transaction processing

zkSync & Zero-Knowledge Proofs

  • zkSync Era: Layer 2 scaling solution for Ethereum
  • Passkey Authentication: Secure wallet connection without seed phrases
  • Smart Accounts: Each user gets a smart account on zkSync Era

zkVerify

  • Zero-Knowledge Verification: Verify property details without revealing sensitive information
  • Proof Generation: Create cryptographic proofs using the Groth16 proving system
  • Verification System: Validate proofs on-chain for trustless verification

Verifiable Credentials

  • Humanity Protocol: Verify real-world identity while preserving privacy
  • Credential Issuance: Issue verifiable credentials for property ownership
  • Credential Verification: Validate credentials without compromising privacy

Frontend & User Experience

  • Next.js: React framework for the web application
  • Tailwind CSS: Utility-first CSS framework for styling
  • Framer Motion: Animation library for smooth transitions
  • Mapbox: Interactive maps for property visualization

πŸ—οΈ Project Structure

AirSpace/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/                  # Next.js app directory
β”‚   β”‚   β”œβ”€β”€ my-nfts/          # NFT collection display
β”‚   β”‚   β”œβ”€β”€ verify/           # Verification interface
β”‚   β”‚   └── listings/         # Air rights listings
β”‚   β”œβ”€β”€ components/           # Reusable UI components
β”‚   β”œβ”€β”€ contracts/            # Blockchain smart contracts
β”‚   β”‚   β”œβ”€β”€ AirSpaceNFT.cdc   # Flow NFT contract
β”‚   β”‚   └── ZkSyncETHTransfer.sol # zkSync contract
β”‚   β”œβ”€β”€ context/              # React context providers
β”‚   β”œβ”€β”€ services/             # API and blockchain services
β”‚   β”‚   β”œβ”€β”€ flowNftService.ts # Flow NFT operations
β”‚   β”‚   β”œβ”€β”€ zkVerifyService.ts # ZK verification
β”‚   β”‚   └── humanityProtocol.ts # Verifiable credentials
β”‚   └── scripts/              # Utility scripts
β”‚       β”œβ”€β”€ mintNFTs.sh       # NFT minting script
β”‚       └── exportNFTs.sh     # NFT export script
β”œβ”€β”€ public/                   # Static assets
└── package.json              # Project dependencies

πŸš€ Getting Started

Prerequisites

  • Node.js (v16+)
  • Flow CLI (for contract deployment)
  • Flow testnet account
  • zkSync Era Sepolia testnet account

Installation

  1. Clone the repository:

    git clone https://github.com/atharvalade/AirSpace_ETHDenver.git
    cd AirSpace_ETHDenver
  2. Install dependencies:

    npm install
  3. Set up environment variables:

    cp .env.example .env.local
    # Edit .env.local with your API keys and configuration
  4. Start the development server:

    npm run dev

Flow Wallet Configuration

AirSpace uses the following Flow wallet address for testing:

0x4f50ec69447dbf04

πŸ”„ Core Workflows

Minting Air Rights NFTs

Property owners can tokenize their air rights by:

  1. Creating a listing with property details
  2. Verifying ownership through verifiable credentials
  3. Generating a zero-knowledge proof of property details
  4. Minting an NFT on the Flow blockchain
# Mint NFTs from JSON data
npm run mint-nfts

Buying Air Rights

Developers and businesses can purchase air rights by:

  1. Browsing available listings
  2. Connecting their Flow wallet
  3. Verifying their identity
  4. Completing the purchase transaction

Verifying Ownership

All air rights can be verified using:

  1. Zero-knowledge proofs for privacy-preserving verification
  2. On-chain verification of NFT ownership
  3. Verifiable credentials for real-world identity verification
# Export and verify NFTs
npm run export-nfts

πŸ§ͺ Zero-Knowledge Verification

AirSpace uses zkVerify for privacy-preserving verification:

  1. Generate Proof: Create a ZK proof of property details
  2. Verify Proof: Validate the proof without revealing sensitive information
  3. On-Chain Verification: Store verification results on the blockchain

πŸ“œ Smart Contracts

AirSpaceNFT (Flow)

The AirSpaceNFT contract defines the structure for air rights NFTs:

pub resource NFT: NonFungibleToken.INFT, MetadataViews.Resolver {
    pub let id: UInt64
    pub let propertyAddress: String
    pub let currentHeight: UInt64
    pub let maximumHeight: UInt64
    pub let availableFloors: UInt64
    pub let price: UFix64
    pub let mintedAt: UFix64
    
    // ... implementation
}

ZkSyncETHTransfer (zkSync Era)

The ZkSyncETHTransfer contract handles ETH transfers on zkSync Era:

contract ZkSyncETHTransfer {
    event Transfer(address indexed from, address indexed to, uint256 amount);
    
    // ... implementation
}

πŸ” Authentication

AirSpace offers multiple authentication methods:

  1. Flow Wallet: Connect using FCL (Flow Client Library)
  2. zkSync SSO: Passkey authentication without seed phrases
  3. Verifiable Credentials: Identity verification through Humanity Protocol

πŸ“Š Data Format

Air rights NFTs use the following data format:

{
  "tokenId": 2,
  "ipfsHash": "QmUhnjFEszhg6Qkk6hQYNQxKK1Ghhn6DRM26CjLXFv18RY",
  "metadata": {
    "title": "Niagara Falls Hotel View Rights",
    "name": "AirSpace - Niagara Falls Hotel View Rights",
    "description": "Secure the pristine view of Niagara Falls by purchasing air rights above the existing hotel structure.",
    "attributes": [
      {"trait_type": "Property Address", "value": "6650 Niagara Parkway, Niagara Falls, ON L2G 0L0"},
      {"trait_type": "Current Height", "value": 10},
      {"trait_type": "Maximum Height", "value": 25},
      {"trait_type": "Available Floors", "value": 15},
      {"trait_type": "Price", "value": 250000}
    ],
    "properties": {"coordinates": {"latitude": 43.0962, "longitude": -79.0377}}
  }
}

🌐 Resources

πŸ“§ Contact

For questions or support, please contact me at ladeatharva@gmail.com


Built with ❀️ at ETHDenver 2025

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors