βοΈ Jewelry Auction System - Capstone Project SWP391 - FPT University HCM - SUMMER 2024
πππ
:beginner: About
- πΈ This web app is out capstone project of semester 5 in FPT University πππ
- πΈ The online jewelry auction web app allows users to participate in auctions for unique jewelry items. Users can register, view a list of items up for auction, place bids, and follow auctions in real-time. Additionally, users can submit their own jewelry for auction on the platform.
:memo: Key Features
1. Registration and Login:
- Users can create an account using their email and password.
- Security with JWT (JSON Web Tokens) for authentication and bcrypt for password encryption.
2. Jewelry Listings
- Display of jewelry items currently up for auction, including images, detailed descriptions, starting bids, and auction end times.
- Search and filter features for jewelry type, price, date and auction status (ongoing, waiting, finished).
3. Bidding:
- Users can place bids on their registered auction with favorite jewelry items.
- The system automatically updates the highest bid and notifies users of changes in bidding.
Support for real-time bidding with auto-refresh functionality.
4. Submit Jewelry for Auction:
- Users can register to submit their jewelry items for auction.
- Functionality to upload images, provide detailed descriptions, set buy now price,...
- Staff, admin approval process to ensure the quality and authenticity of submitted jewelry.
- Sellers can track the progress of the jewelry in their profile.
5. Notifications:
- Notifications in-app alerts when a higher bid is placed or when an auction is nearing its end.
- Notifications via email when active new account, process of jewelry.
- Alerts for important activities such as change status jewelry, register auction success or password changes.
6. Account Management:
- Users can manage their personal information, auction history, and jewelries items.
- Admin dashboard to add, verify, edit, and delete accounts.
7. Dashboard:
- Manager dashboard to edit, and delete jewelries, manage submit jewelries from sellers, manage transactions, manage auctions.
- Admin dashboard to to add, verify, edit, and delete accounts.
:wrench: Technology
1. Frontend:
- React.js with TypeScript, i18next for internationalization, Ckeditor for rich text editing in descriptions, Firebase for storing images and UI libraries like React-Bootstrap, SweetAlert for user-friendly alert dialogs.
2. Backend
- Spring Boot with Hibernate for building the API, SQL Server for data storage.
3. Realtime
- Socket.io, Websocket for real-time bidding functionality.
![](https://img.shields.io/badge/Socket.io-010101?&style=for-the-badge&logo=Socket.io&logoColor=white)
4. Security
- JWT for authentication and bcrypt for password encryption.
![](https://img.shields.io/badge/JWT-000000?style=for-the-badge&logo=JSON%20web%20tokens&logoColor=white)
5. Deployment
- Use Vercel and Railway for deployment.
:link: Demo
π Jewelry Auction Web
:ok_man: Contributors
:key: License
Β© 2024 Licensed under the MIT License
π Feel free to use my repository and star it if you find something interesting π€