Production management application.
- Spring Boot
- Java
- Gradle Kotlin DSL
- JDBC
- JPA
- Hibernate
- PostgreSQL
- JUnit
- Mockito
- Lombok
- Spring Security
- Spring Data
- Spring Web
- Spring Mail
- Flyway
- OpenAPI (Swagger)
- Vaadn (Java-only(Flow))
- Spring Boot
- Java
- Gradle Kotlin DSL
- JUnit
- Mockito
- Lombok
- Spring Web
- JWT-based authentication - the application uses JWT tokens for user authentication and includes token refresh mechanism (http only secure cookie)
- the application allows login on multiple devices simultaneously
- Gradle multi module build system
- the application has an exception handling mechanism
- the application has a logging mechanism
- the application has an email sending mechanism
- the application has a scheduled task handling mechanism (cron)
- the application has separate environments for dev and prod
- the application has a dedicated configuration file
- the application has RBAC (Role Based Access Control)
- the application has an audit mechanism (who and when modified data)
- the application has Flyway database migration mechanism
- and many other features that can be found in the application code
- Gradle build system
- Vaadin
- the application has separate environments for dev and prod
- the application has a dedicated configuration file
- and many other features that can be found in the application code
- Docker for development environment
- PMD for static code analysis
- SpotBugs for static code analysis
- JSpecify for null-safety annotations
- NullAway for null-safety checks
- Error Prone for static code analysis
- Spotless for code formatting
Note: During application development, SOLID principles, DRY, composition over inheritance, dependency injection, design patterns, architectural patterns were applied, tests were written, and other good programming practices were adopted.
- in progress