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".
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.