Welcome to the E-commerce Platform repository! This project provides a fully-featured e-commerce application, allowing users to browse products, add them to their cart, and securely checkout. The admin panel allows for managing products, categories, and viewing orders.
- 🔐 User Authentication: Secure user registration, login, and password recovery.
- 🛒 Cart System: Add products to the cart, modify quantities, and proceed to checkout.
- 📦 Product Management: Manage products, categories, and inventory.
- 🔍 Product Search & Filters: Find products based on categories, price range, etc.
- 📦 Order Management: Admin can view orders, update order statuses, and manage customers.
- 📊 Analytics: Track order history, revenue, and more.
- Clone the Repository
git clone https://github.com/LaraSamara/E-commarce.git cd E-commarce
- Install Dependencies
npm install
- Set Environment Variables
- Backend: Node.js, Express.js
- Database: MongoDB
- Payment Gateway: Stripe (or any other of your choice)
- Authentication: JWT (JSON Web Tokens)
- Email Integration: SendGrid (for sending emails like order confirmations)
- Environment Variables: dotenv
- Security: bcrypt.js (for password hashing)
Once the application is running, users can:
-
Sign Up: Create an account with their email and a secure password.
-
Login: Access their account using email and password.
-
Browse Products: View the products listed by category and filter them based on their preferences.
-
Add to Cart: Users can add products to their shopping cart, modify quantities, and proceed to checkout.
-
Checkout: Complete the purchase by providing shipping details and payment information. Admins can:
-
Manage Products: Add, update, and delete products in the admin panel.
-
View Orders: Track customer orders and update order statuses (e.g., pending, shipped).
-
Manage Customers: View and manage customer details and their order history.
We welcome contributions to improve this project! Here's how you can contribute:
- Fork the Repo: Fork this repository to your own GitHub account.
- Create a Branch: Create a branch for your improvements or bug fixes.
- Submit a Pull Request: Once you're happy with your changes, submit a PR to the main branch.
This project is licensed under the MIT License - see the LICENSE file for details.