Work in progress — please read
This project may need some fixes and UI refinement because of recent changes. You can still use and set up this code now—we will polish it when we work on this project again.
Bike Auction Hub: live auctions, wallet bidding, and admin settlement in one Next.js app
List bikes and gear, run live timed auctions with wallet bids, pay winners through admin banks, and settle seller credits—all in a Next.js + MongoDB platform. Free on GitHub.
- website code
- bike auction
- next.js
- mongodb
- product spotlight

Bike Auction Hub is an online auction platform for motorcycles, scooters, spare parts, gear, and more. It replaces scattered phone deals and manual tracking with a structured flow: users submit listings, admins review them, sellers start live auctions, bidders compete via wallet, and settlements close through admin bank accounts and wallet credits.
Three actors, one lifecycle
| Actor | Role | Main actions |
|-------|------|--------------|
| Seller | Lists items | Submit auction request, start within 6h after approval, accept winning bid, set handover store |
| Bidder | Competes on live auctions | Recharge wallet, place bids (city must match), pay on Won tab if winner |
| Admin | Runs the platform | Accept/reject requests, set fees & banks, credit seller wallet, final confirm |
Sign-in uses email + password. After npm run db:seed, demo password for all accounts is 12345678.
Auction status flow
```
pending_review → approved → live → completed
↓ ↓
expired stopped
```
- pending_review — waiting in admin queue (up to 48h display)
- approved — seller has 6 hours to click Start auction
- live — bidding open (max 3 hours)
- completed — winner chosen; payment and settlement begin
Wallet & fees
| Fee | Who pays | When |
|-----|----------|------|
| Seller fee | Deducted from seller credit | Admin credits seller wallet (1–5%) |
| Purchaser fee | Added to winner payment | Winner pays admin bank (0.1–1.9%) |
| Bid deposit | Bidder wallet on first bid | Fixed deposit + fee on that auction |
Fee percentages are locked on the auction when it completes—changing admin settings later does not alter closed sales.
Tech stack
- Next.js 14 (App Router), React, Tailwind CSS
- MongoDB with Mongoose
- REST API routes under
app/api/*
Get the source
The project is free on GitHub. Clone moeezshakir/BikeAuctionHub, copy .env.example to .env.local, set MONGODB_URI, then:
```bash
npm install
npm run db:seed
npm run dev
```
Open http://localhost:3000 and try the seeded auctions: #3 is live with demo bids, #4 is completed for settlement testing. Use three browser windows—admin, seller, and bidder—to walk through the full flow.
Watch the walkthrough on the [Bike Auction Hub product page](/products/bike-auction-hub)—screenshots and demo video are there.
[Open the Bike Auction Hub product page](/products/bike-auction-hub)
References
Links and resources
Related