Code Monkey home page Code Monkey logo

closetconnection's Introduction

image

๐ŸŒŸ MERN Marketplace ๐ŸŒŸ

The MERN Marketplace application will allow users to become sellers, who can manage shops, and add the products they want to sell in each shop. Admin can control functionality of Seller Users who visit MERN Marketplace will be able to search for and browse products they want to buy, and add products to their shopping cart to place an order. we have 3 Order Method.

๐Ÿ–ฅ๏ธ Tech Stack

Frontend:

reactjsย  react-routerย  reduxย  tailwindcssย  muiย  PayPal

Backend:

nodejsย  expressjsย  mongodbย  jwtย 

Realtime Communication:

socketio

package manager

Yarn

๐Ÿš€ Features

  • User Authentication Pages ๐Ÿšช

    • User Signup ๐Ÿ“
      • email verification
      • upload a Profile image
    • User Login ๐Ÿ”
  • Home Page ๐Ÿ 

    • View all product uploads by seller ๐Ÿ“ƒ
    • filter with the category ๐Ÿ“Š
    • Best-selling product (Sort by Sold_out data) ๐Ÿ’Ž
    • All Product ๐Ÿ“ฆ
    • All Event's ๐ŸŽŠ
    • FAQ ๐Ÿ™‹
  • Filters for Sorting Posts ๐Ÿ—‚๏ธ

    • Sort posts by Clothes, Shows, gifts, etc...
  • User Search Bar ๐Ÿ”

    • Search for product ๐Ÿ”Ž
    • Click on a user to go to the Product details page ๐Ÿ‘ค
  • wish list โค๏ธ

    • store in cart ๐Ÿ‘€
  • Add to cart ๐Ÿ›’

    • Check out for payment ๐Ÿ’ณ
      • we have 3 payment systems Pay-pal,Strip,Cash of Delivery (COD)
  • Apply Coupon Code for Discount ๐Ÿ‘‰๐Ÿ’ฅ

  • Product Explore Page ๐Ÿ”

    • View Product from another seller ๐ŸŒ
    • View reviews from other users โญ
    • The eye button shows Product Details ๐Ÿ‘
    • Original Price and discount price ๐Ÿ’ต
    • HowMeney Buy this product ๐Ÿค
    • Inc and Dec product ๐Ÿ“‰ +
    • Show Description of product ๐Ÿ“ƒ
    • View Seller Profile ๐Ÿ‘ฅ
    • Chating with Seller ๐Ÿ’ฌ
    • Show Seller Information ๐Ÿ“‹
    • Show Related Products ๐Ÿ”—
    • Add to wish list โค๏ธ
    • Add to Cart ๐Ÿ›’
  • User Profile Page ๐Ÿ‘ค

    • Edit your profile details - profile photo, name, email, phone number โœ๏ธ
    • change Password ๐Ÿ”
    • View All Order ๐Ÿ‘จ๐Ÿพโ€๐Ÿ’ป.
    • After Delivery of the product user can Refund the product. ๐Ÿ”™
    • User inbox Chat with the seller. โœ‰๏ธ
    • Use can Track Orders. ๐Ÿ›ค๏ธ
    • Store 3 Address Details. Like Default, Home, office. ๐Ÿ“ซ
    • Only Admin show Admin Dashboard ๐Ÿ‘‘
    • Logout ๐Ÿ”š
    • Create a Review After Delivery Product ๐Ÿš›
    • After the Buy product is Sold out is increased. and Stock decrease in DB.
  • Message โœ‰๏ธ

    • Sand Image ๐Ÿ–ผ๏ธ
    • Show active or not ๐ŸŸข
    • Time of sand Message โฐ
  • Popular Events ๐Ÿ’ฅ

    • Show Recent Events
  • Responsive ๐Ÿ“ฑ

    • All screens are responsive
  • Alerts ๐Ÿšจ

    • Alerts in the app to notify users about success/failure operations
  • Seller Authentication Pages ๐Ÿšช

    • Seller Signup ๐Ÿ“
      • shop name, Phone Number, Email address, Address,Zip Code, Password โœ
      • upload a Profile image ๐Ÿ“ท
      • email verification โœ…
    • Seller Login ๐Ÿ”
  • Seller Dashboard ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ง

    • Overview of a Product and Latest Orders ๐Ÿ–‡๏ธ
    • Account Balance (with 10% service charge) ๐Ÿ’ฐ
  • All Orders โš–

    • Seller Update Product Delivery status ๐Ÿ“†
    • Create Products โœ”๏ธ
      • name*
      • Description *
      • Category * like:- Computer and Laptops, Cosmetics and body care, Accessories, clothes,Shoes, Gifts, Pet Care, Mobile and Tablets, Music and Gaming, Other ๐Ÿงฉ
    • All product ๐Ÿ’ป
      • Seller can delete Product โŒ
      • View all Products ๐Ÿ“ฆ
  • Create an Event ๐Ÿ’ฅ๐ŸŽ‰

    • name* ๐Ÿ“‡
    • Description *
    • Category * like:- Computer and Laptops, Cosmetics and body care,Accessories, Clothes, Shoes,Gifts, Pet Care, Mobile and Tablets, Music and Gaming, Other
    • Tags
    • Original Price
    • Price (With Discount) *
    • Product Stock *
    • Event Start Date * โœ…
    • Event End Date * (Default 3 days) โ›”
    • Upload multiple Images * ๐Ÿ“ท
  • All Event ๐ŸŽ‰

    • Show Event ๐Ÿ’ฅ
    • Delete Event โ›”
  • Withdraw Money ๐Ÿ“ฅ

    • Add Bank Details ๐Ÿ›๏ธ
    • Not withdraw the highest amount of Balance ๐Ÿ’ฑ
    • Sand mail to sell with amount ๐Ÿ“ฉ
    • Delete Bank Details ๐Ÿชง
  • Shop Inbox ๐Ÿ“ž

    • All Messages ๐Ÿ“ฌ
    • Sand Image to user ๐Ÿ–ผ๏ธ
    • Show Activ function ๐ŸŸข
  • Discount Codes ๐ŸŽŸ๏ธ

    • Create coupon code ๐Ÿ–ฑ
    • Delete coupon code ๐Ÿ›‘
    • apply all Products of the shop ๐Ÿคฉ
    • Can apply the specific product 1๏ธโƒฃโ˜๏ธ
  • Refunds ๐Ÿ”™

    • Seller can update the Status of the Product ๐Ÿ”„
  • Settings โš›

    • update Images, Shop Address, Shop Phone Number, Shop Zip Code โ›“
    • Add Shop description ๐Ÿ“–
  • Shop Desboard ๐ŸŽฐ

    • Shop Products ๐ŸŒƒ
    • Running Events ๐ŸŽช
    • Shop Reviews โญ
    • Log out โ†ช๏ธ
  • Admin Authentication Pages (normal user in DB roll in Admin) ๐Ÿšช

    • Admin Signup ๐Ÿ“
    • Admin Login ๐Ÿ”
    • Overview ๐Ÿ‘” - Total Earning ๐Ÿค‘ - All Sellers ๐Ÿ‘จโ€๐Ÿ”ง - All Orders ๐Ÿ›๏ธ - Latest Orders ๐Ÿ”ข
    • Show All Orders of Seller's ๐Ÿ›๏ธ
    • Show All sellers and Delete โ›”
    • Show All users and Delete ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ โ›”
    • All Products in DB. ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป
    • All Events of Seller ๐Ÿ“ข
    • verify Seller Withdraw request and Sand mail to update's ๐Ÿ“ง
    • if Delete images it also deletes from the local devise

๐Ÿ“น Video Demo

  • Video Size is high So, I can not upload it to Github.I upload it to youtube.Vedo Demo heaar

Sneak Peek of Home Page ๐Ÿ™ˆ :

home

image <image
image image

User Profile Page ๐Ÿ‘ฅ :

userHome

image image
image image
image image

Product Page โš™๏ธ

image
image image
image image
image image

๐Ÿงพ Receipt

image
image image
image image
image image

Seller page ๐Ÿ›๏ธ

image
image image
image image
image image
image image
image image
Mobile View Desktop View
image image
image image
image image

Admin Dashbard ๐Ÿ‘ค

adminDs
image image
image image
image image
image

Project description ๐Ÿ“

๐ŸŒŸ Introducing MERN Marketplace: A Revolutionary Multi-Vendor Website ๐ŸŒŸ

๐Ÿš€ Dear LinkedIn Network, I am thrilled to announce the completion of my latest project, the MERN Marketplace! ๐ŸŒŸ This dynamic platform brings together buyers and sellers, offering a seamless online shopping experience with a plethora of innovative features.

๐Ÿ’ก Key Technologies: Front-End:

React 18:- user interface

React Router: client-side routing

Redux: Employing Redux for state management, ensuring centralized data handling and seamless interactions between components.

Tailwind CSS: Leveraging the power of Tailwind CSS for streamlined and responsive UI design, enabling rapid development and customization.

Material-UI: Integrating Material-UI components to enhance the visual appeal and usability of the website.

Back-End:

Node.js: Utilizing Node.js as the server-side runtime environment to build scalable and efficient backend services.

Express.js: Harnessing the power of Express.js, a fast and minimalist web application framework, to handle routing and middleware.

JWT (JSON Web Tokens): Implementing JWT-based authentication for secure and stateless user sessions.

MongoDB: Leveraging MongoDB, a NoSQL database, for efficient data storage and retrieval, enabling seamless scalability.

Real-time Communication: Utilizing Socket.io to enable real-time communication between buyers, sellers, and the application server.

Yarn: Employing Yarn as the package manager to manage project dependencies efficiently.

Image Upload with Multer: Integrating Multer middleware to handle image uploads, ensuring seamless storage and retrieval of product images.

Email Communication with Nodemailer: Implementing Nodemailer to facilitate email communication, including email verification and notifications.

๐Ÿ’ก Key Features: 1๏ธโƒฃ User Authentication Pages ๐Ÿšช

User Signup: Enable users to create accounts, complete with email verification and the option to upload a profile image.

User Login: Secure login functionality to protect user accounts.

2๏ธโƒฃ Home Page ๐Ÿ 

View Seller Products: Showcase all product uploads by sellers, allowing users to browse and explore various offerings.

Category Filters: Implement filters to help users narrow down their search by selecting specific product categories.

Best-Selling Products: Highlight popular products based on the number of units sold, aiding users in making informed decisions.

Events Section: Display all upcoming events, fostering engagement and excitement among users.

Frequently Asked Questions (FAQ): Provide a dedicated section to address common user queries.

3๏ธโƒฃ Filters for Sorting Posts ๐Ÿ—‚๏ธ

Sort by Category: Enable users to filter posts by different categories, such as clothes, shoes, gifts, and more.

4๏ธโƒฃ User Search Bar ๐Ÿ”

Search Functionality: Implement a robust search feature, allowing users to search for specific products or click on user profiles to view their offerings.

5๏ธโƒฃ Wishlist and Cart Management โค๏ธ๐Ÿ›’

Wishlist: Enable users to add products to their wishlist, saving them for future reference.

Add to Cart: Provide a seamless shopping experience by allowing users to add products to their cart for purchase.

Checkout and Payment: Implement a secure payment system, supporting PayPal, Stripe, and Cash on Delivery (COD) options.

Apply Coupon Code: Allow users to apply coupon codes for discounts during the checkout process.

6๏ธโƒฃ Product Explore Page ๐Ÿ”

Detailed Product Information: Display product details, including original and discounted prices, descriptions, seller information, and related products.

Seller Interaction: Facilitate direct communication between users and sellers through chat functionality.

Reviews and Ratings: Showcase reviews and ratings from other users to help inform purchasing decisions.

7๏ธโƒฃ User Profile Page ๐Ÿ‘ค

Profile Editing: Allow users to edit their profile details, including profile photos, names, email addresses, and phone numbers.

Order History: Provide users with an overview of all their previous orders, allowing them to track deliveries and request refunds if necessary.

Inbox and Chat: Enable users to communicate with sellers, fostering a seamless exchange of information.

Address Management: Allow users to store multiple addresses for efficient checkout, including default, home, and office options.

8๏ธโƒฃ Seller Dashboard ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ง

Product and Order Management: Provide sellers with an overview of their products and the latest orders, along with the ability to update delivery statuses.

Event Creation: Allow sellers to create and manage events, including details such as event name, description, category, dates, and images.

Shop Settings: This enables sellers to update their shop information, including images, addresses, phone numbers, and descriptions.

Inbox and Communication: Facilitate communication between sellers and users, ensuring a smooth exchange of information.

9๏ธโƒฃ Admin Dashboard ๐Ÿ‘‘

Admin Authentication: Implement secure login functionality for admins.

Overview and Analytics: Provide admins with an overview of total earnings, all sellers, all orders, and the latest orders.

Seller and User Management: Enable admins to manage sellers and users, including the ability to delete accounts if necessary.

Product and Event Management: Allow admins to view all products and events in the database, facilitating efficient management.

Withdrawal Management: Provide admins with the ability to verify seller withdrawal requests, update balances, and send email notifications.

Image Management: Enable admins to delete images, ensuring data integrity and storage optimization.

๐Ÿš€ With the power of these cutting-edge technologies, the MERN Marketplace delivers a robust and feature-rich multi-vendor website. It ensures a seamless user experience, efficient data management, real-time communication, and secure transactions. Join me in revolutionizing the e-commerce experience by connecting buyers and sellers in a dynamic and user-friendly environment.

Feel free to reach out to me for more information or to explore collaboration opportunities.

#MERNMarketplace #Ecommerce #React #NodeJS #ExpressJS #MongoDB #SocketIO #TailwindCSS #MaterialUI #Innovation #OnlineShopping #RevolutionizingRetail

IMPORTANT NOTE -

This project does not have a mongoDB connection setup. Set up the connection based on the environments below.

  • local development: create a config folder (make sure to name it .env) in the config folder, which exports your db.uri connection.
  • (make new folder uploads) in the backend.

File structure

client - Holds the client application

  • public - This holds all of our static files

  • src

    • assets - This folder holds assets such as images, docs, and fonts

    • components - This folder holds all of the different components that will make up our views

      • Admin
      • cart
      • Checkout
      • Events
      • layout
      • Logout
      • Payment
      • Products
      • Profile
      • Route
      • Shop
      • Signup
      • Wishlist
    • pages - This folder holds All pages Admin, shop, user

      • Shop
    • redux - This folder holds all states of the Web app

      • action
      • reducer
    • static - This folder holds Static file like logo categorie

    • App.js - This is what renders all of our browser routes and different views

    • index.js - This is what renders the react app by rendering App.js, should not change

  • package.json - Defines npm behaviors and packages for the client

server - Holds the server application

  • config - This holds our configuration files, like mongoDB uri

  • controller - These hold all of the callback functions that each route will call

  • db - These hold all of Data Base Connection

  • middleware - These hold all error handle

  • models - This holds all of our data models

  • uploads - Store all image in hear

  • utils - This holds all of our HTTP to URL. jwtToken and sand mail, Token gentrare

  • mlter.js - Sand mail login

  • server.js - Defines npm behaviors and packages for the client

  • package.json - Defines npm behaviors like the scripts defined in the next section of the README

socket - Socket.io is use to chaing feacher

  • .env
  • index.js
  • package.json

.gitignore - Tells git which files to ignore

README - This file!


๐Ÿ’ป How to run the app locally! ๐Ÿƒ

STAP-1

git clone https://github.com/pattjoshi/Multi_vondor_E_shop.git

STAP-2

  • cd frontend
  • yarn install
  • yarn start

STAP-3

  • cd backend
  • yarn install
  • create folder uploads
  • create confilg folder and a .env file
  • use your Cradincial in.env file
PORT = 8000
DB_URL = ""
JWT_SECRET_KEY = ""
JWT_EXPIRES = 7d
ACTIVATION_SECRET = 
SMPT_HOST = 'smtp.gmail.com'
SMPT_PORT = 465
SMPT_PASSWORD = 
SMPT_MAIL =
STRIPE_API_KEY = 
STRIPE_SECRET_KEY = 
  • yarn start

STAP-4

  • cd socket
  • yarn install
  • create a .env file
PORT = 4000
  • yarn start

๐Ÿ™ If you find this repo helpful then don't forget to give a star โ‡๏ธ to this repository. :)

Animated footer bars


Back to top

@copyright by Om Pattjoshi 2023

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.