/miu-waa-online-market-fe

This project is a full-fledged e-commerce web application built with Spring Boot and React with Vite. Users can register and log in, browse products by categories, add products to their shopping cart, and proceed to checkout. Sellers can manage their products, and administrators can approve or reject sellers and manage flagged reviews.

Primary LanguageTypeScript

Online Market

Online Market is an e-commerce platform that allows users to browse, purchase, and manage products. The platform supports multiple user roles including buyers, sellers, and administrators, each with different functionalities and permissions.

Description

This project is a full-fledged e-commerce web application built with a robust backend and a modern frontend. Users can register and log in, browse products by categories, add products to their shopping cart, and proceed to checkout. Sellers can manage their products, and administrators can approve or reject sellers and manage flagged reviews.

Features

  • User Authentication and Authorization
  • Product Browsing and Filtering by Categories
  • Shopping Cart Management
  • Order Placement and Tracking
  • Seller Approval System
  • Review Management
  • Admin Dashboard for managing flagged reviews and sellers
  • Responsive Design

Tech Stack

Frontend

  • React: A JavaScript library for building user interfaces.
  • Redux: A predictable state container for JavaScript apps.
  • TypeScript: A typed superset of JavaScript that compiles to plain JavaScript.
  • Tailwind CSS: A utility-first CSS framework for rapid UI development.
  • React Router: For handling navigation and routing in the application.
  • Axios: For making HTTP requests to the backend API.
  • Moment.js: For parsing, validating, manipulating, and displaying dates and times in JavaScript.

Backend

  • Spring Boot: A Java-based framework used to create microservices.
  • Spring Security: For authentication and authorization.
  • Hibernate: For ORM (Object Relational Mapping) to manage database entities.
  • PostgreSQL: A powerful, open-source object-relational database system.
  • JWT (JSON Web Tokens): For securing endpoints and managing user sessions.

Others

  • Docker: For containerizing the application.
  • AWS: For deployment and hosting.
  • GitHub Actions: For CI/CD.

Getting Started

Prerequisites

  • Java 11 or higher
  • Node.js 14 or higher
  • PostgreSQL
  • Docker (optional, for containerization)
  • AWS Account (optional, for deployment)

Installation

  1. Clone the repository

    git clone https://github.com/your-username/MyOnlineMarket.git
    cd MyOnlineMarket