Skip to content

XindusBazaar: Your go-to shopping app for effortless and enjoyable online shopping experiences!

Notifications You must be signed in to change notification settings

SunilSinghTarkar/XindusBazaar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 

Repository files navigation

E-Commerce App (XindusBazaar)

XindusBazaar: Your go-to shopping app for effortless and enjoyable online shopping experiences!

Wishlist Management Backend Application Documentation

Overview

This documentation provides a comprehensive guide for setting up, running, testing, and understanding the backend functionality of the Wishlist Management feature in the e-commerce platform.

Project Details

Features

Users Module

Users Registration: Users can register with the application by providing their personal information and contact details.

Login: Registered Users can logIn to their accounts securely using Spring Security.

Preview WishList: Users can browse a list of available Items in their WishList.

Add To WishList: Users can Add Item to their WishList.

Remove From WishList: Users can Remove Item from WishList.

Technologies Used

Backend: Java, Spring Boot, Spring Security, JPA
Frontend: Html, Css ,JavaScript ( Frontend URL:https://xindusbazaar-sunil.netlify.app/)

Database: MySQL

Authentication: Spring Security with JWT (JSON Web Tokens)

How to Run the Application

Clone the repository from GitHub.

Set up the database by executing the provided SQL scripts in MySQL.

Configure the database connection properties in the application file.

Build and run the Spring Boot application.

Access the application through a PostMan and register/logIn.

Start using the application and add Items to WishList.

Installation & Run

Before running the API server, please follow these steps:

  1. Update the database configuration inside the application-dev.yml file located in your project:
spring:
 datasource:
   driver-class-name: com.mysql.cj.jdbc.Driver
   password: your_password
   url: jdbc:mysql://localhost/your_database_name
   username: your_username
 jpa:
   hibernate:
     ddl-auto: update
   show-sql: true

API Endpoints

Localhost: http://localhost:8080
Deployed: https://xindusbazaar-production.up.railway.app

Endpoints for WishList management.

.GET /api/wishlists: Retrieve a user's WishList.  (Authentication required)

.POST /api/wishlists: Adding a new item to WishList. (Authentication required) Note: item obj required to pass.

.DELETE /api/wishlists/{Id}: Remove a wishlist item by ID. (Authentication required)

Endpoints for Users management.

.GET /api/signIn: Registered Users can logIn to their accounts. (Without Authentication allowed)

.POST /api/registers: Registering a new User to the Database.   (Without Authentication allowed)
ex:
{ 
 "userName":"Sunil",
 "email":"sunil@gmail.com",
 "password":"1234"
}

Endpoints for Items management.

.GET /api/items/{itemId}: Retrieve the item. (Authentication required)

.GET /api/items: Retrieve the itemList. (Authentication required)

.POST /api/items: Create a new Item.  (Authentication required)
 ex:
{ 
  "itemName":"Item01",
  "category":"Fashion",
  "price":120.20
}

##Note Upon successful registration or login, users will receive a user object.

Database architecture

Screenshot_20240217_192951

About

XindusBazaar: Your go-to shopping app for effortless and enjoyable online shopping experiences!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published