A modern, full-stack e-commerce platform built with React, Node.js, and MongoDB. The platform consists of three main components: a customer-facing frontend, an admin dashboard, and a backend API.
- Modern, responsive design with glass-morphism effects
- User authentication (login/register) with social login options
- Product browsing and searching
- Shopping cart functionality
- Secure checkout process
- Order tracking
- User profile management
- Secure admin authentication
- Product management (CRUD operations)
- User management
- Order processing and tracking
- Inventory management
- Sales analytics (coming soon)
- RESTful API architecture
- JWT-based authentication
- Role-based access control
- Order processing
- Product and category management
- User management
- React
- Tailwind CSS
- React Router
- React Icons
- Glass-morphism design
- React Admin
- Material-UI
- Data provider for REST APIs
- Custom authentication provider
- Node.js
- Express.js
- MongoDB
- JWT authentication
- REST API
- Node.js (v14 or higher)
- npm or yarn
- MongoDB
- Clone the repository:
git clone https://github.com/yourusername/ecommerce-platform.git
cd ecommerce-platform- Install dependencies for all components:
# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd ../frontend
npm install
# Install admin panel dependencies
cd ../admin
npm install- Set up environment variables:
Create
.envfiles in both backend and frontend directories:
Backend .env:
PORT=5000
MONGODB_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret- Start the development servers:
# Start backend server (from backend directory)
npm run dev
# Start frontend server (from frontend directory)
npm run dev
# Start admin panel (from admin directory)
npm run devThe applications will be available at:
- Frontend: http://localhost:5173
- Admin Panel: http://localhost:5174
- Backend API: http://localhost:5000
ecommerce-platform/
├── frontend/ # Customer-facing frontend
│ ├── src/
│ │ ├── components/ # Reusable components
│ │ ├── pages/ # Page components
│ │ └── assets/ # Static assets
│ └── ...
├── admin/ # Admin dashboard
│ ├── src/
│ │ ├── components/ # Admin components
│ │ ├── resources/ # Resource configurations
│ │ └── providers/ # Data and auth providers
│ └── ...
└── backend/ # Backend API
├── src/
│ ├── routes/ # API routes
│ ├── models/ # Database models
│ ├── controllers/# Route controllers
│ └── middleware/ # Custom middleware
└── ...
- JWT-based authentication
- Social login integration
- Secure password hashing
- Role-based access control
- Real-time cart updates
- Persistent cart storage
- Product quantity management
- Price calculations
- Multi-step checkout
- Address management
- Order summary
- Payment integration (coming soon)
- Dashboard analytics
- Order management
- Product catalog management
- User management
- Inventory tracking
- Fork the repository
- 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.
- React Admin for the admin dashboard framework
- Tailwind CSS for the styling system
- Material-UI for admin components
- All other open-source contributors
For support, email support@yourdomain.com or create an issue in the repository.