Skip to content

vertyll/freshly

Repository files navigation

Project Assumptions

Application with air quality data from IoT sensors.

Technology Stack

Back-end:

  • Spring Boot
  • Java
  • Gradle Kotlin DSL
  • MongoDB
  • JUnit
  • Mockito
  • Lombok
  • Spring Security
  • Spring Data MongoDB
  • Spring Web
  • Spring Mail
  • OpenAPI (Swagger)

Front-end:

  • in progress

Authentication:

  • Keycloak

Core back-end:

  • Gradle build system
  • the application has an exception handling mechanism
  • the application has a logging mechanism
  • the application has separate environments for dev and prod
  • the application has a dedicated configuration file
  • the application has Keycloak integration for authentication and authorization
  • the application has permission management based on keycloak roles
  • the application written in Domain-Driven Design (DDD) style
  • and many other features that can be found in the application code

Core front-end:

  • in progress

Other:

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

Preview Screenshots

  • in progress

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •