IvoryCart is a scalable and secure Shopping & Auction System designed to provide a seamless online shopping experience. The platform enables users to browse products, add items to their cart, participate in auctions, and securely complete transactions, while ensuring real-time inventory management and transaction integrity.
- User Authentication & Session Management: Secure login system to protect user data.
- Product Catalog & Inventory Management: Real-time stock updates to prevent overselling.
- Shopping Cart & Order Processing: Add/remove items from cart, ensuring availability until checkout.
- Concurrency & Multi-User Support: Handles multiple users simultaneously without conflicts.
IvoryCart follows a client-server architecture, where:
- Frontend (Client): A web-based UI that allows users to interact with the system.
- Backend (Server): A C++ backend that uses threading, monitors, and more to handle bidding and order processing.
- Database: A SQLITE relational database that stores users, products, orders, and other information.
- Frontend: HTML, CSS, TypeScript, React
- Backend: C++ (Using processes liking forking, and multi-threading)
- Database: SQLite
- Security: Encrypted transactions, secure authentication
To set up the project locally:
- Clone the repository:
git clone https://github.com/your-username/ivorycart.git
- Install dependencies (for frontend).
cd new-client npm install - Run the server:
cd server mkdir build cd build cmake .. make ./server
- Access the frontend via http://localhost:5173/
- Sumail Aasi
- Mohammed Al-Hashimi
- Dev Chaudhari
- Obaid Mohiuddin
- Zain Syed