EasyMart is an e-commerce platform where users can purchase products, and sellers can add products to sell.
This platform provides both functionalities, making it easy for vendors and customers to interact in one place.
Currently, we have implemented the first phase of the project, where:
β
Users can sign up and log in as either a Vendor or a Customer.
β
Authentication is handled using JWT (JSON Web Token).
β
Emails are sent using NodeMailer.
β
MySQL is used for storing user data.
In Phase 2, EasyMart was enhanced with complete role-based functionality, offering unique experiences for customers and vendors.
- π After login, users are redirected to separate home pages based on their role:
- Customers see a standard shopping interface.
- Vendors access a dashboard for managing their products.
Customers have access to a full-fledged shopping interface:
- View profile details
- Edit profile information
- Change password
- Forgot password with email verification
- Delete account with confirmation
- Browse products by category
- View detailed product pages
- Add/remove items to/from wishlist
- Add/remove items to/from shopping cart
- Explore personalized βTop Picksβ section
Vendors manage their shop and product listings:
- View and edit profile
- Change password
- Forgot password via email
- Delete account
- Add new products
- View all uploaded products
- Edit product details
- Delete products
| Area | Features Implemented |
|---|---|
| Role-based Views | Separate dashboards for Customer and Vendor |
| Customer Side | Profile, Edit, Delete, Wishlist, Cart, Top Picks, Product View |
| Vendor Side | Product Add/Edit/Delete, Profile Management |
| Shared Features | Change Password, Forgot Password (email), Delete Account |
- React.js β For building the user interface
- Node.js β Backend runtime
- Express.js β Server framework
- MySQL β For storing user and product data
- JWT (JSON Web Token) β Secure user authentication
- NodeMailer β For sending confirmation and notification emails
git clone https://github.com/ydv-kanchan/EasyMart.git
cd EasyMart