XindusBazaar: Your go-to shopping app for effortless and enjoyable online shopping experiences!
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 Name: XindusBazaar
- Backend URL: https://xindusbazaar-1.onrender.com/swagger-ui/index.html
- Frontend URL:https://xindusbazaar-sunil.netlify.app/
- GitHub Repository: https://github.com/SunilSinghTarkar/XindusBazaar
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.
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)
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.
Before running the API server, please follow these steps:
- 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
Localhost: http://localhost:8080
Deployed: https://xindusbazaar-production.up.railway.app
.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)
.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"
}
.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.