🧰 Frameworks and Libraries
Frontend 🖥️:
Vite
,React
,Tailwind CSS
,Framer Motion
Backend ⚙️:
C#
(ASP.NET
)Stripe 💸: Payment integration via
@stripe/stripe-js
Repositories
📘 Introduction of BidOut
BidOut is an innovative online platform designed to bring the excitement of live auctions to the web, making it easy for users to both bid on and list valuable items for sale. The platform combines an intuitive, user-friendly interface with secure transactions
, creating a trustworthy environment for users. BidOut’s frontend features allow users to browse auctions, place bids, and manage accounts, with listings that provide detailed item descriptions, images, and starting bids. A real-time bidding system ensures users stay engaged with automatic bid increments
, realtime notifications, and countdown timers
. To further enhance the experience, payment gateway like Stripe
are integrated for secure, streamlined transactions.
For BidOut’s frontend development, we used React
, Tailwind CSS
to create a dynamic, responsive user experience. react provided the structure, enabling a clean and accessible design, while CSS
and Tailwind
allowed us to add visual styling that enhanced user engagement. React was essential for building interactive components, like the real-time bidding system and auction listings, ensuring smooth updates and fast rendering. This combination of technologies enabled us to develop a user-friendly interface that’s both visually appealing and functionally robust, offering a seamless experience across devices.
Supporting BidOut’s frontend is a robust backend built on C# ASP.NET Web API
, with a MySQL database
for storing auction details, user profiles, bid histories, and transaction records. RESTful APIs handle everything from creating and updating auctions to processing bids, ensuring reliable data flow between the frontend and backend. Security measures, including role-based access control
and data encryption
, safeguard users’ data and transactions, while reporting and analytics capabilities help users track auction performance and their previous bids.
For BidOut’s backend testing, we used Insomnia
and Swagger
to ensure our APIs were reliable and efficient. Insomnia
allowed us to test endpoints thoroughly, checking data handling and response accuracy, while Swagger
provided an interactive interface for exploring and documenting each function. Together, these tools helped us refine the backend, ensuring smooth and secure interactions between the client and server.
External services enhance BidOut’s functionality even further, with email notifications
to keep users updated on bid confirmations and auction statuses, social media integration for auction sharing, and a fully responsive design for smooth access on any device. Key development tasks focused on client application creation, backend API development, and rigorous testing to ensure BidOut provides a reliable, seamless experience for all users.
With BidOut, users have a dynamic, responsive, secure auction management system that combines modern web technologies and thoughtful design. This report details the system's architecture, design patterns, and development approach, underscoring BidOut's commitment to quality and user satisfaction.
🏗️ System Architecture
BidOut is a secure and transparent auction system designed to prevent fraudulent bidding behavior. To participate in any auction, each user must pay an upfront fee equivalent to 10% of the auction's starting value. This fee serves as a commitment to discourage fake or non-serious bids.
Once the first bid is placed, all subsequent bids must be at least $10 higher than the previous bid. The user with the highest bid at the end of the auction is declared the initial winner and is given 24 hours to complete the payment. If they successfully make the payment within this time, the auction is finalized in their favor, and their 10% upfront fee is fully refunded.
However, if the highest bidder fails to complete the payment within the 24-hour window:
They are removed from the auction.
Their 10% upfront fee is not refunded.
All of their lower bids are automatically canceled.
The opportunity to purchase is passed to the second-highest bidder.
The second-highest bidder will then be given their own 24-hour payment window. If they fail to pay, their upfront fee is also forfeited, their bids are canceled, and the process moves to the third-highest bidder, and so on.
This cycle continues until a bidder completes the payment within the allocated time and is officially declared the winner of the auction.
🔁 Swagger API Routes


📦 DTOs (Data Transfer Objects)



🗂️ ER Diagram (Entity-Relationship Diagram)

🖼️ User Interface (UI)






(After won the auction user can purchase the items)



(Real-time Notifications for user actions)

(Real-time Notifications from other user's actions)

🌍 Open Source
We’ve made BidOut to help other developers learn and build from our experience. (Documentations
and configurations
are included)
🗂️ Frontend Repository(React)
🗂️ Backend Repository (C#,.net)
🧑💻 Team Contribution
Student ID | Name | GitHub Username |
---|---|---|
27292 | GUI Perera (Leader) | |
27601 | SWKR Pinsiri | |
27578 | MJM Shaahid | |
27958 | MCA Jayasingha | |
27176 | Weerathunga KTN | |
27177 | Weerathunga KTS |