Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vrutik21/slashcart
Exploring Java and Spring Boot for the backend, utilizing JPA, Hibernate, and JPQL to create a robust ecommerce project. The frontend is developed using React, providing a dynamic and user-friendly interface to complement the backend functionality.
https://github.com/vrutik21/slashcart
context-api hibernate-orm java javascript jpa-hibernate jpql postgresql react spring-boot spring-mvc
Last synced: about 1 month ago
JSON representation
Exploring Java and Spring Boot for the backend, utilizing JPA, Hibernate, and JPQL to create a robust ecommerce project. The frontend is developed using React, providing a dynamic and user-friendly interface to complement the backend functionality.
- Host: GitHub
- URL: https://github.com/vrutik21/slashcart
- Owner: Vrutik21
- Created: 2024-08-17T04:22:38.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-08-20T05:29:11.000Z (4 months ago)
- Last Synced: 2024-11-16T22:35:10.110Z (about 1 month ago)
- Topics: context-api, hibernate-orm, java, javascript, jpa-hibernate, jpql, postgresql, react, spring-boot, spring-mvc
- Language: JavaScript
- Homepage:
- Size: 109 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# Slashcart
Slashcart is an e-commerce project developed to explore Java, Spring Boot, PostgreSQL, Hibernate ORM, JPA, and JPQL for backend development, alongside React for the frontend. This project demonstrates a full-stack application with basic e-commerce functionalities, including product management and a dynamic user interface.
## Table of Contents
- [Features](#features)
- [Technologies Used](#technologies-used)
- [Getting Started](#getting-started)
- [Backend Setup](#backend-setup)
- [Frontend Setup](#frontend-setup)
- [Project Structure](#project-structure)
- [Acknowledgments](#acknowledgments)## Features
### Backend
- **CRUD Operations for Products**: Implemented using Java, Spring Boot, Hibernate, JPA, and JPQL.
- **Image File Upload**: Supports uploading images for products, with storage handled in the database.
- **Product Search API**: Provides search functionality for products.### Frontend
- **Home Page**: Displays a list of products with a dynamic and responsive UI.
- **Add Product Page**: Allows users to add new products.
- **Update Product Page**: Enables editing of existing products.
- **Add to Cart**: Basic shopping cart functionality.
- **Theme Options**: Users can switch between dark and light themes.
- **Global State Management**: Utilized ContextAPI for handling global state across the application.## Technologies Used
- **Backend**:
- Java
- Spring Boot
- PostgreSQL
- Hibernate ORM
- JPA (Java Persistence API)
- JPQL (Java Persistence Query Language)
- **Frontend**:
- React
- ContextAPI
- CSS for styling## Getting Started
Follow the instructions below to set up and run the Slashcart project locally.
### Prerequisites
- Java 8 or higher
- Maven
- Node.js
- npm (Node Package Manager)### Clone the Repository
```bash
git clone https://github.com/Vrutik21/Slashcart.git
```### Backend Setup
1. Navigate to the backend directory:
```bash
cd Backend
```2. Start the Spring Boot application:
- Using Maven:
```bash
./mvnw spring-boot:run
```- Or directly from the main application file: Open `Slashcart/Backend/src/main/java/com/parmar/explore/ExploreApplication.java` in your IDE and run the ExploreApplication class.
3. The backend server should now be running on `http://localhost:8080`.
### Frontend Setup
1. Navigate to the frontend directory:
```bash
cd Frontend
```2. Install the necessary dependencies:
```bash
npm install
```3. Start the development server:
```bash
npm run dev
```4. The frontend application should now be running on `http://localhost:3000`.
## Project Structure
The project is divided into two main folders:
- Backend: Contains all backend-related code and configuration.
- Frontend: Contains all frontend-related code and assets.## Acknowledgments
This project was developed as a learning exercise to explore the use of Java, Spring Boot, Hibernate ORM, JPA, and JPQL.