ToyHub

ToyHub is a fully functional e-commerce platform designed to sell toys online. This project is built using the MERN stack (MongoDB, Express, React, Node.js) with a focus on creating a comprehensive platform for both users and administrators. It includes features such as user authentication, product management, and a responsive user interface.

Table of Contents

Features

Admin Side

  • Admin sign in
  • User management (list, block/unblock users)
  • Category management (add, edit, delete categories)
  • Product management (add, edit, delete products)
  • Multiple product images with cropping and resizing before upload

User Side

  • Home page with product listings
  • User sign up & login with validation
  • Sign up with OTP verification and timer
  • Social login (Google, Facebook, etc.)
  • Product details view with image zoom
  • Product detailed page includes:
    • Breadcrumbs
    • Ratings
    • Price
    • Discounts or coupons applied
    • Reviews
    • Stock status
    • Product highlights/specifications
    • Related product recommendations

Project Structure

TOYHUB

├── config

├── controllers

├── middlewares

├── models

├── node_modules

├── public
│ ├── css
│ ├── images
│ └── js

├── routes
│ └── admin.js

├── services

├── tests
│ ├── integration
│ │ └── auth.test.js
│ └── unit
│ ├── product.test.js
│ └── user.test.js

├── utils

└── views
├── auth
│ ├── login.ejs
│ └── signup.ejs

├── layouts
│ └── main.ejs

├── partials
│ ├── footer.ejs
│ └── header.ejs

└── products
├── productDetails.ejs
└── index.ejs


  1. Clone the repository: ``bash git clone https://github.com/RaihanAizvan/toyhub.git 2. Navigate to the project directory: 3. Install the required dependencies: 4. Set up environment variables: - Create a.env` file in the root directory. - Add the following environment variables: 5. Start the development server: 6. Access the application: Open your web browser and go to http://localhost:3000 to view the ToyHub platform.
Share this project:

Updates