An eCommerce website built using React.js on the frontend and designed to provide a seamless online shopping experience. The platform includes features such as product browsing, shopping cart management, user authentication, and order processing.
- Responsive UI: Optimized for both mobile and desktop devices.
- Product Browsing: View a wide range of products with filtering and sorting.
- Shopping Cart: Add products to the cart, manage quantity, and view total price.
- User Authentication: Sign-up and login for users (JWT-based authentication).
- Search Functionality: Find products by category, name, or price.
- Order Management: Review past orders and current purchases.
- Payment Gateway Integration: Secure online payments (e.g., Stripe, PayPal).
- Admin Dashboard: Manage products, categories, and track orders.
- Frontend: React.js, Redux, CSS3, HTML5, Axios
- Backend: Node.js, Express.js
- Database: MongoDB (NoSQL database)
- Authentication: JWT (JSON Web Tokens)
- Deployment: Vercel/Netlify for frontend, Heroku for backend
- Payment Gateway: Stripe/PayPal API for handling payments
- Node.js
- MongoDB (Local or Atlas)
-
Clone the repository:
git clone https://github.com/yourusername/ecommerce-website.git cd ecommerce-website
-
Install dependencies:
npm install cd client npm install
-
Configure environment variables:
Create a
.env
file in the root directory and add the following:PORT=5000 MONGO_URI=your_mongo_database_uri JWT_SECRET=your_jwt_secret STRIPE_SECRET_KEY=your_stripe_secret_key
-
Start the server:
npm run dev
This will start both the frontend and backend concurrently using concurrently.
If you want to run frontend and backend on separate servers:
- Start the backend server:
npm start
- Start the frontend server:
cd client npm start
- Browse products and add them to the cart.
- Register or log in to make a purchase.
- Checkout and pay using the integrated payment system.
- View order history in your profile.
Homepage: Browse and search for products.
Shopping Cart: Manage your items.
Contributions are welcome! Follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m 'Add your message'
- Push to the branch:
git push origin feature/your-feature-name
- Open a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.