Skip to content

E-commerce platform with advanced features, including Seller Review Analysis to improve decision-making. It offers insights into product review topics and sentiment distribution using Stanford's CoreNLP. The frontend is built with React, and the backend is powered by Spring Boot.

Notifications You must be signed in to change notification settings

safouat/ECommerce-Spring-CoreNLP-React

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

E-Commerce Platform with Advanced Features

Project Goal

This project aims to create a full-fledged e-commerce platform with advanced features like Seller Review Analysis to enhance decision-making. The platform provides:

  • Insights into the most discussed topics in product reviews.
  • Sentiment distribution analysis using CoreNLP from Stanford.

Additionally, we have developed a REST API that supports fundamental CRUD operations of an e-commerce platform, with user validation at every step.


Modules

  1. Login/Logout
  2. Seller
  3. Customer
  4. Product
  5. Cart
  6. Order
  7. Review Analysis

Class Diagram and ER Diagram:

classfinal er

Front-End Interface (React.js)

Screenshots

Screenshot from 2025-01-16 18-35-53 Screenshot from 2025-01-16 18-36-04 Screenshot from 2025-01-16 18-36-07 Screenshot from 2025-01-16 18-36-11 Screenshot from 2025-01-16 18-36-26 Screenshot from 2025-01-16 18-36-28 Screenshot from 2025-01-16 18-37-07 Screenshot from 2025-01-16 18-37-18 Screenshot from 2025-01-16 18-37-50 Screenshot from 2025-01-16 18-38-07 Screenshot from 2025-01-16 18-38-36 Screenshot from 2025-01-16 18-38-55 Screenshot from 2025-01-16 18-38-39


Back-End (Spring Boot)

Tech Stack

  • Java
  • Spring Framework
  • Spring Boot
  • Spring Data JPA
  • Hibernate
  • MySQL
  • CoreNLP (Stanford)

Features

Seller Features

  • Administrator role for managing the application.
  • Add/Update/Delete products with valid session tokens.
  • Access customer details, order history, and review insights.

Customer Features

  • Register and log in to get a valid session token.
  • Browse products, add to the cart, and place orders.
  • Access order history, cart, and other features when logged in.

Review Analysis Module

Analyze customer reviews using CoreNLP. This module:

  • Extracts the most discussed topics.
  • Displays sentiment distribution (positive, negative, neutral).
  • API Endpoint:
    GET /analysis/{productId}
    

API Endpoints

Root Endpoint

Login & Logout Module

  • POST /register/customer - Register a new customer
  • POST /login/customer - Login customer
  • POST /logout/customer - Logout customer
  • POST /register/seller - Register a new seller
  • POST /login/seller - Login seller
  • POST /logout/seller - Logout seller

Customer Module

  • GET /customer/current - Get logged-in customer details
  • PUT /customer - Update customer details
  • DELETE /customer - Delete customer account

Seller Module

  • GET /seller/{sellerid} - Get seller by ID
  • POST /addseller - Add new seller
  • PUT /seller - Update seller details
  • DELETE /seller/{sellerid} - Delete seller by ID

Product Module

  • GET /product/{id} - Get product by ID
  • POST /products - Add new product
  • DELETE /product/{id} - Delete product by ID

Cart Module

  • GET /cart - Get cart items
  • POST /cart/add - Add item to cart
  • DELETE /cart/clear - Clear cart

Order Module

  • GET /orders - Get all orders
  • POST /order/place - Place a new order
  • DELETE /orders/{id} - Cancel an order

How to Run the Project

1. Clone the Repository

git clone https://github.com/your-repo/ecommerce-platform.git
  1. Install Dependencies Frontend
cd frontend-directory
npm install

Backend

Configure the application.properties file for MySQL connection:

spring.datasource.url=jdbc:mysql://localhost:3306/your_database
spring.datasource.username=your_username
spring.datasource.password=your_password
  1. Build and Run the Server

    Build the backend:

mvn clean install

cd target

java -jar ecommerce-platform-<version>.jar
  1. Start the Frontend

Navigate to the frontend directory and start the React application:

npm install
npm start

Project Created By:

  • Safouat El Yassini
  • Mohammed Amyn El Boujadaini

Contributions are welcome!

About

E-commerce platform with advanced features, including Seller Review Analysis to improve decision-making. It offers insights into product review topics and sentiment distribution using Stanford's CoreNLP. The frontend is built with React, and the backend is powered by Spring Boot.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published