-
Features
-
Project requirements
-
Getting Started
-
Technologies Used
-
Demo
-
License
-
Documentation
-
More pictures
This project consists of two applications: one is a Spring Boot Rest API called pastry-shop-backend and another is a ReactJS application called pastry-shop-frontend The app is created with a portfolio in mind and mimics an online pastry shop for ordering and delivering confectionery products. Spring Boot Web Java backend application that exposes a REST API to manage deliveries. Its secured endpoints can just be accessed if an access token (JWT) is provided. In the application there are user/admin roles, the processing of the requests made by the user is carried out by the administrator.
Spring-backend stores its data in a MySql database.
Spring-backend has the following endpoints
ReactJS frontend application where users can find and order products. In order to access the application, user must login using his/her username and password. All the requests coming from react-frontend to secured endpoints in spring-backend have a access token (JWT) that is generated when user / business logs in.
React-frontend uses Semantic UI React as CSS-styled framework.
Created by me application is intended to serve as a portfolio for me, as although the products presented in it to be real, when ordering from the app there will be no real delivery even though it tracks the various order/delivery cycles of the product.
-
Clone the repository to your local machine.
-
Configure your MySQL database by updating the application.properties file.
-
Configure environment variables by updating the application.properties file.
-
Build and run the project pastry-shop using maven
-
Build and run the project pastry-shop-web using npm. Follow these step first: 1) npm install 2) go to \pastry-shop-web 3) npm start.
-
Access the web application by visiting http://localhost:3000 in your web browser.
-
Create admin and user accounts, manage products, and place orders as needed.
Enjoy
-
Java 17
-
Spring Boot 3.0.2
-
Spring Security
-
Spring Data JPA
-
Jwt.io
-
Web Sockets
-
Multithreading
-
React, Bootstrap for React
-
HTML, CSS, JavaScript#
-
Responsive web design
-
SockJS client and StompJS
-
Aspect-Oriented Programming
-
MySQL
-
Cloudinary for managing images
-
Spring Boot Mail for sending emails
-
Swagger springdoc-openapi v2.2.0
-
And more...
https://sladkarnicata-na-mama.azurewebsites.net/
- MIT License
After start App can see documentation on this link: https://sladkarnicata-na-mama-spring.delightfulisland-2ebaa5ac.westeurope.azurecontainerapps.io//swagger-ui/index.html#/