Skip to content

This is a sample back-end application designed to demonstrate typical use cases and best practices in Spring Boot development.

Notifications You must be signed in to change notification settings

VinhNguyenTCU/Hogwarts-Artifacts-Online

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hogwarts-Artifacts-Online - Sring Boot Application

Maven Build Azure Deployment Java Spring Boot Spring Cloud Azure

What is 🧙‍♂️ Hogwarts Artifacts Online🧙‍♂️?

Hogwarts Artifacts Online is a sample back-end application designed to demonstrate typical use cases and best practices in Spring Boot development. I code along with Dr. Bingyang from YouTube series "Learn Spring Boot 3 With Bingyang".

What I have learned?

After learning from this YouTube series, I have gained practical experience in:

  • Dependency Injection and the use of Spring Framework's core container.
  • Building the web layer with Spring MVC (Model-View-Controller)
  • Data persistence in relational databases using Spring Data JPA (Jakarta Persistence API).
  • User authentication and authorization with Spring Security and JWT (JSON Web Tokens).
  • Deploy a Spring Boot application to a cloud platform wit Spring Cloud Azure.
  • Monitoring a running Spring Boot application in the production with Spring Boot Actuator.
  • Making requests to OPENAI API with RestClient.
  • Paging and sorting.
  • Writing dynamic queries with Spring Data JPA specifications.
  • And more.

Additionally, I also had a chance to learn and experience good software engineering practices, such as:

  • Defining software requirements with User Stories.
  • Version control and project planning sing Git and GitHub.
  • The API-First Approach in designing effective REST APIs.
  • Test-Driven Development (TDD): writing test first, then coding just enough to pass the tests, and refactoring.
  • Object-Oriented Design with UML.
  • CI/CD (Continuous Integration and Continuous Delivery) with GitHub Actions.

Releases

No releases published

Packages

No packages published

Languages