Skip to content

Latest commit

 

History

History
79 lines (64 loc) · 3.11 KB

README.md

File metadata and controls

79 lines (64 loc) · 3.11 KB

NFTFY - NFT Auction Platform

NFTFY is a feature-rich NFT auction platform developed as the final assignment for the Software Architecture module. It enables seamless and secure buying, selling, and bidding on NFTs while ensuring a user-friendly experience for buyers, sellers, and admins.

Features

  • Auction View
    Buyers can browse live NFT auctions and view details like NFT descriptions, bid history, and countdowns.

  • Buyer Registration
    Buyers must register to participate in auctions. Upon successful registration, they receive a welcome email and access exclusive features like bidding and viewing their bid history.

  • Seller Verification
    Sellers are required to provide ID and address for verification. Admins approve verified sellers, granting them access to auction management features.

  • Auction Creation
    Verified sellers can list NFTs with a title, description, and auction timings. Sellers can edit details before the auction starts.

  • Bidding
    Registered buyers can place bids. Notifications are sent via email for bid confirmations and updates.

  • Auction Closure
    A .NET background service automatically closes auctions when the time expires, updates the status, and notifies both the seller and the highest bidder.

  • NFT Claim & Payment
    The winning bidder can claim their NFT and process payment securely. Ownership is transferred after payment confirmation.

  • Admin Management
    Admins can manage buyers, sellers, and auctions, ensuring smooth operations and maintaining platform security.

Installation Guide

  1. Prerequisites
  • .NET SDK: Ensure the .NET SDK (version 8.0 or higher) is installed.
  • Node.js: Make sure Node.js (version v20.11.1 or higher) is installed.
  • SQL Server: Make sure SSMS (version v20.2 or higher) is installed.
  1. Backend Setup (ASP.NET Core Web API)
  • Step 1: Extract the backend project folder provided.
  • Step 2: Open the project solution in Visual Studio.
  • step 3: If your SQL Server is not SQLEXPRESS then update connection string in appsettings.json
Server=.\\<Your SQL Server Name>;
Database=AuctionHouse;Trusted_Connection=true;TrustServerCertificate=true;
  • step 4: Open terminal on backend root folder and run dotnet restore
  • Step 5: For add db migrations and update db, run
dotnet ef migrations add InitialCreate or add-migration InitialCreate
dotnet ef database update or update-database
  • Step 6: Run the backend using Visual Studio.
  1. Frontend Setup (Next.js)
  • Step 1: Open Terminal in the client directory.
  • Step 2: Install dependencies. run,
npm install
  • Step 3: run the Client. run
npm run dev

Technologies Used

  • Backend: ASP.NET Core Web API
  • Frontend: Next.js, NextUI, Tailwind CSS
  • Authentication: JWT
  • Email Services: Gmail SMTP
  • Payment Integration: Stripe
  • Background Services: .NET Background Service

Project Structure

/NFTFY  
├── /Client          # Frontend (Next.js, NextUI, Tailwind CSS)  
├── /API             # Backend (ASP.NET Core Web API)  
└── README.md        # Documentation