Welcome to the E-commerce platform repository! This project is designed to provide a seamless online shopping experience, complete with a feature-rich frontend and a robust backend. The platform aims to deliver an efficient and scalable solution for e-commerce businesses.
- Responsive and user-friendly design
- Product listing and search functionality
- Shopping cart management
- User authentication and account management
- Checkout and payment integration
- RESTful API for frontend communication
- Secure user authentication and authorization
- Database design optimized for scalability and performance
- Order and inventory management
- Admin panel for managing products and users
- Framework: Next.js
- Styling: Tailwind CSS
- State Management: Redux
- API Integration: Axios/Fetch
- Runtime Environment: Node.js
- Framework: Express.js
- Database: MongoDB with Mongoose
- Authentication: JWT/OAuth
- Deployment: AWS EC2, Vercel (for frontend)
- Version Control: Git and GitHub
- Task Runner: yarn
- CI/CD: GitHub Actions
This project uses a monorepo structure to manage both the frontend and backend within a single repository.
E-commerce/
├── packages/
│ ├── frontend/ # Frontend code
│ ├── backend/ # Backend code
├── node_modules/ # Shared dependencies
├── package.json # Root-level package configuration
└── README.md # Project documentation
Follow these steps to set up the project locally:
- Node.js (v16 or later)
- npm or yarn
- MongoDB/PostgreSQL instance (local or cloud-based)
- Git
$ git clone https://github.com/MeeReak/E-commerce.git
$ cd E-commerce$ yarn install # Install dependencies for all packagesCreate .env files in the respective frontend and backend directories under packages/, based on the .env.example files provided.
$ cd packages/frontend
$ yarn start$ cd packages/backend
$ yarn devAccess the frontend at http://localhost:3000 and the backend at http://localhost:5000.
packages/frontend/
├── src/
│ ├── components/
│ ├── pages/
│ ├── redux/
│ ├── styles/
│ └── utils/
├── public/
└── package.json
packages/backend/
├── src/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middlewares/
│ └── utils/
├── migrations/
└── package.json
We welcome contributions! Follow these steps to contribute:
- Fork the repository
- Create a new branch (
git checkout -b feature/your-feature) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/your-feature) - Create a pull request
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or suggestions, feel free to reach out:
- Website: EcoFresh
Happy coding! 🚀