Skip to content
Sayem Hossain edited this page Nov 15, 2019 · 4 revisions

Spring Boot Featured Skeleton

It's a skeleton project with lots of features implemented by default.

Features At a Glance

For Admin Panel

  • Login
  • Template configuration (Thymeleaf engine with layout dialect)
  • Integrated (with thymeleaf engine, layout dialect) Opensource AdminBSBMaterialDesign theme for admin panel
  • Spring Security Configuration (WebSecurity)

For API's

  • User Registration/Authentication
  • Dynamic User Authorization Management (Roles & Privileges)
  • OAuth2 for securing API's
  • Phone verification with OTP when registration
  • Swagger configuration
  • CORS configuration
  • Promotion Management
  • Profile CRUD

Common

  • Email configuration for sending Emails
  • SMS service configuration for sending SMS
  • Exception Handling
  • Activity Logging
  • Flood Control (Auto Block IP for multiple failed attemps)
  • Firebase Push server configuration (Implemented on NotificationService)
  • File Upload Configuration for storing files on FileSystem
  • And lots of utility classes


Deployment:

Packaging mvn clean package -DskipTests -Denv=prod Here -Denv=prod comes from maven profiling on pom.xml file. This argument activates production profile and loads config from that profile. use -Denv=dev or -Denv=local or create a new profile.

To deploy app on a cloud instance please look at my blog here.

Deploy Spring Boot app in a cloud instance