Welcome to the MERN E-commerce Website repository! This project serves as a comprehensive tutorial for building an e-commerce application using the MERN stack. It covers essential features such as product management, user authentication, and payment integration.
- Product Management: Add, edit, and delete products with ease.
- User Authentication: Secure user login and registration process.
- Payment Integration: Seamless payment processing using PayPal API.
- Ratings and Reviews: Users can leave feedback on products.
- Responsive Design: Built with Tailwind CSS for a modern look.
- State Management: Uses Redux Toolkit for efficient state management.
This project leverages a variety of technologies:
- MERN Stack: MongoDB, Express.js, React, Node.js
- Cloudinary: For image uploads and management.
- PayPal API: For handling payments.
- Redux Toolkit: For state management in React.
- Tailwind CSS: For styling the application.
- User Reviews: To enhance product credibility.
To get started with the MERN E-commerce Website, follow these steps:
-
Clone the Repository:
git clone https://github.com/roniepascal/mern-ecommerce-website.git
-
Navigate to the Project Directory:
cd mern-ecommerce-website
-
Install Dependencies:
For the server:
cd server npm install
For the client:
cd client npm install
-
Set Up Environment Variables:
Create a
.env
file in the server directory and add the necessary environment variables such as MongoDB URI and PayPal Client ID. -
Run the Application:
Start the server:
cd server npm start
Start the client:
cd client npm start
Visit http://localhost:3000
to see the application in action!
Once the application is running, you can:
- Register a new user account.
- Log in to your account.
- Browse through the product catalog.
- Add products to your cart.
- Proceed to checkout and make payments using PayPal.
- Leave ratings and reviews for products you purchase.
For more detailed instructions, refer to the Releases section where you can find specific builds and their corresponding documentation.
Here's a brief overview of the folder structure:
mern-ecommerce-website/
├── client/ # React frontend
│ ├── public/ # Static files
│ ├── src/ # React components and assets
│ └── package.json # Client dependencies
└── server/ # Node.js backend
├── config/ # Configuration files
├── controllers/ # Request handlers
├── models/ # Database models
├── routes/ # API routes
└── package.json # Server dependencies
We welcome contributions! If you have suggestions or improvements, please fork the repository and create a pull request.
- Fork the project.
- Create your feature branch (
git checkout -b feature/AmazingFeature
). - Commit your changes (
git commit -m 'Add some AmazingFeature'
). - Push to the branch (
git push origin feature/AmazingFeature
). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or feedback, feel free to reach out:
- Email: your-email@example.com
- GitHub: roniepascal
Thank you for checking out the MERN E-commerce Website!