Build a Spring Blog

Build Ironclad Gazette with Spring Boot 3, Thymeleaf, Bootstrap 5, Spring Security, JPA/Hibernate, MySQL, owned post CRUD, search, password recovery, and a Railway deployment.

  • Difficulty Intermediate
  • Parts 12
  • Stack Java 17, Spring Boot 3, Thymeleaf, Bootstrap 5, Spring Security, JPA, MySQL 8

How this project works

Ironclad Gazette is an original teaching blog in twelve complete snapshots. Clone once and run any numbered folder without rebuilding earlier stages.

The path starts with Spring Boot and routing, adds Thymeleaf and Bootstrap, then introduces isolated MySQL databases. Later parts add registration, form login, media, ownership, pagination, search, reset tokens, and Railway deploy notes.

Snapshots 4–12 seed ada@example.com and grace@example.com with password123.

Local MySQL runs through Docker Compose on host port 3308 with databases ironclad_01ironclad_12.

Open GitHub repo →

Parts in order

Work through the parts in sequence. Each lesson explains the ideas, then points you to a runnable GitHub snapshot.