Skip to content

MeeReak/E-commerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

426 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

E-commerce Platform

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.

Features

Frontend

  • Responsive and user-friendly design
  • Product listing and search functionality
  • Shopping cart management
  • User authentication and account management
  • Checkout and payment integration

Backend

  • 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

Tech Stack

Frontend

  • Framework: Next.js
  • Styling: Tailwind CSS
  • State Management: Redux
  • API Integration: Axios/Fetch

Backend

  • Runtime Environment: Node.js
  • Framework: Express.js
  • Database: MongoDB with Mongoose
  • Authentication: JWT/OAuth
  • Deployment: AWS EC2, Vercel (for frontend)

Additional Tools

  • Version Control: Git and GitHub
  • Task Runner: yarn
  • CI/CD: GitHub Actions

Monorepo Structure

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

Installation

Follow these steps to set up the project locally:

Prerequisites

  • Node.js (v16 or later)
  • npm or yarn
  • MongoDB/PostgreSQL instance (local or cloud-based)
  • Git

Setup

Clone the Repository

$ git clone https://github.com/MeeReak/E-commerce.git
$ cd E-commerce

Install Dependencies

$ yarn install # Install dependencies for all packages

Configure Environment Variables

Create .env files in the respective frontend and backend directories under packages/, based on the .env.example files provided.

Run the Development Server

Frontend
$ cd packages/frontend
$ yarn start
Backend
$ cd packages/backend
$ yarn dev

Access the frontend at http://localhost:3000 and the backend at http://localhost:5000.

Project Structure

Frontend

packages/frontend/
├── src/
│   ├── components/
│   ├── pages/
│   ├── redux/
│   ├── styles/
│   └── utils/
├── public/
└── package.json

Backend

packages/backend/
├── src/
│   ├── controllers/
│   ├── models/
│   ├── routes/
│   ├── middlewares/
│   └── utils/
├── migrations/
└── package.json

Contributing

We welcome contributions! Follow these steps to contribute:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/your-feature)
  3. Commit your changes (git commit -m 'Add some feature')
  4. Push to the branch (git push origin feature/your-feature)
  5. Create a pull request

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For questions or suggestions, feel free to reach out:


Happy coding! 🚀

Releases

No releases published

Packages

 
 
 

Contributors