Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/abhishekomp/coffeeshop
Coffee shop application using Spring Boot microservice, thymeleaf, alpineJS
https://github.com/abhishekomp/coffeeshop
alpinejs bootstrap5 cart cors docker-compose github-actions h2 h2-database jquery-ajax pagination spring-boot thymeleaf thymeleaf-layout-dialect
Last synced: 2 days ago
JSON representation
Coffee shop application using Spring Boot microservice, thymeleaf, alpineJS
- Host: GitHub
- URL: https://github.com/abhishekomp/coffeeshop
- Owner: abhishekomp
- Created: 2024-11-06T09:05:03.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-11-15T19:14:35.000Z (about 2 months ago)
- Last Synced: 2024-11-15T20:21:19.050Z (about 2 months ago)
- Topics: alpinejs, bootstrap5, cart, cors, docker-compose, github-actions, h2, h2-database, jquery-ajax, pagination, spring-boot, thymeleaf, thymeleaf-layout-dialect
- Language: Java
- Homepage: http://localhost:8080
- Size: 1.7 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Microservice Based Coffee Shop application
This project demonstrates microservice applications interacting with one another including a thymeleaf based frontend application.
## Project Overview
This Spring Boot Microservice application showcases the following features:
- Setting up individual Spring Boot application that talk to each other.
- (TBD) Dockerizing the microservice applications using GitHub Actions workflow.
- (TBD) Running the application in Docker container.
- (TBD) Usage of RestClient for interaction between different microservice applications.
- (TBD) Publishing of events to RabbitMQ using Outbox Pattern.
- (TBD) Implementation of email notification via mailhog.
- Frontend application based on Thymeleaf rendering
- (TBD) AlpineJS for adding functionality on web page.
- (TBD) Cart functionality for Order placement.## Prerequisites
Before you begin, ensure you have the following installed:
- Java Development Kit (JDK) 17 or later
- Apache Maven
- (TBD) Docker client## Project Structure
The project (multi-module maven project) consists of the following applications:
- `coffeshop-backend`: A Spring boot application that manages the coffees for the application.
- `coffeshop-frontend`: (End User facing application) A Spring boot web mvc application using Thymeleaf for html rendering and AlpineJS for adding functionality to the html page.## Usage
Once the application is running, you can interact access the application using following endpoint:
- Front end application: http://localhost:8080
- Display products with pagination = http://localhost:8080/products?page=1
- H2 Console: http://localhost:8081/h2The above endpoint will show the main page for the web application along with Cart in the upper right side.
Happy coding!