Skip to content

A Java Spring Boot web application exposing a REST API and a user interface with Thymelead and HTMX. This application allows the user to fetch and store data locally, for a later offline access.

Notifications You must be signed in to change notification settings

qble2/poe-spring-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Disclaimer:

  • This project main purpose was a learning experience to tackle Thymeleaf and HTMX integration with Spring Boot.
  • It may contain unpolished, experimental or rushed code that needs to be refactored and modernized.

POE Spring App

A Java Spring Boot web application that acts as a bridge between a user and two third party APIs [1] [2].
This application allows the user to fetch and store data locally, for a later offline access.
The data is made available to the user through two means:

  • A REST API exchanging data using the JSON format.
  • A simple yet modern graphical user interface.

The persistence layer is managed by Spring Data JPA and Hibernate.
The JSON serialization/deserialization is handled by Jackson.

The frontend is built using Thymeleaf coupled with Thymeleaf Layout Dialect.
The frontend form-based authentication process is managed by Spring Security using a custom authentication provider (to be eventually replaced by OATH 2).
Reloading partial views of a page is made possible using HTMX.
The styling is done with the Minimal CSS Framework Pico.css.
Bootstrap Table adds sorting and searching capabilities to some tables.
Frontend dependencies, such as JavaScript and CSS libraries, are managed through Maven via Webjars.

Lombok is used to reduce boilerplate code.
The mapping between Java bean types is done using MapStruct.
The project's build is managed by Maven.

Features:

The application allows the user to access:

  • The active leagues.
  • The characters of his account.
  • The inventory of a character (2D view).
  • The stash tabs of his account.
  • The content of a stash tab (table view and 2D view).
  • The market overview of a specified league.
  • The ladder of a specified league.

Built with:

Screenshot:

poe-spring-app-screenshot-1

poe-spring-app-screenshot-2

poe-spring-app-screenshot-3

poe-spring-app-screenshot-4

About

A Java Spring Boot web application exposing a REST API and a user interface with Thymelead and HTMX. This application allows the user to fetch and store data locally, for a later offline access.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published