A full-stack sport-e-commerce web application built with React, TypeScript, Node.js, Express.js, MongoDB, and Mongoose. This platform allows users to browse, filter, and purchase sporting goods.
- Single Role User: A single user role that can manage products.
- Responsive Navbar and Footer:
- Navbar with navigation links and logo.
- Footer with social media icons and important page links.
- Homepage:
- Hero section with a carousel for showcasing promotions and discounts.
- Featured products section with details like product name, category, brand, stock, rating, price, and image.
- All Products Page:
- Display all products with search, filter (category, price, rating, brand), and sort functionality.
- Clear filters option.
- Single Product Page:
- Detailed view of the product with an option to add to cart.
- Cart Page:
- View all items in the cart, update quantities, remove items, and proceed to checkout.
- Checkout Page:
- Collect user details and choose between Cash on Delivery or Stripe payment(optional).
- Manage Products:
- User can add, update, and delete products using a form with pre-filled data for updates.
- Backend Integration:
- The backend handles all business logic with MongoDB for database management.
- RTK Query Polling: Show the latest products after every 30 seconds on the homepage.
- React: For building the user interface.
- TypeScript: Type-safe code for better development experience.
- Tailwind CSS: Utility-first CSS for styling.
- React-Rating: A third-party package to display product ratings.
- EmailJS: For sending contact form submissions via email.
- React-Responsive-Carousel: For the homepage hero section.
- React-Photo-View (optional): For viewing product images in a lightbox.
- Redux Toolkit (RTK Query): For managing global state and handling API requests.
- Node.js
- Zod
- Express.js
- TypeScript
- MongoDB & Mongoose
- repo Backend-Repository