This repository contains the source code for a full-stack e-commerce website developed using the MERN (MongoDB, Express.js, React.js, Node.js) stack. The website provides a platform for online shopping, allowing users to browse through a catalog of products, add items to their cart, and complete purchases.
- User Authentication: Users can create accounts, log in, and securely manage their profiles.
- Product Catalog: Display a wide range of products with detailed descriptions, pricing, and product images.
- Shopping Cart: Users can add items to their cart, update quantities, and remove items before proceeding to checkout.
- Order Management: Users can view their order history, track the status of their orders, and receive email notifications.
- Payment Integration: Seamless integration with popular payment gateways, enabling secure and convenient online transactions.
- Search Functionality: Users can search for specific products by keywords or filters.
- Admin Panel: A comprehensive admin panel to manage products, orders, and user accounts.
- Responsive Design: The website is built to be responsive and mobile-friendly, ensuring a seamless user experience across devices.
- Front-end: React.js, Redux, HTML5, CSS3, tailwindCss, and other related libraries.
- Back-end: Node.js, Express.js, MongoDB (with Mongoose ODM).
- Authentication: JSON Web Tokens (JWT) for user authentication and session management.
- Payment Integration: Integration with popular payment gateways (e.g., PayPal, Stripe).
- Deployment: The website can be deployed on platforms like Heroku or AWS.
To get started with the project, follow these steps:
- Clone the repository:
git clone https://github.com/azilRababe/Zenova.git
- Install the dependencies for both the front-end and back-end using
npm install
. - Configure the environment variables for the project, including API keys for payment gateways and database connection details.
- Start the development server for both the front-end and back-end using
npm start
. - Access the website in your browser at
http://localhost:5000
.
Contributions to this project are welcome. If you encounter any issues or have suggestions for improvement, feel free to open an issue or submit a pull request.