Technology stack
Technology stack on the client side
Single Web page application:
- Angular 4 or AngularJS v1.x
- Responsive Web Design with Twitter Bootstrap
- HTML5 Boilerplate
- Compatible with IE11 and modern browsers
- Full internationalization support
- Optional Sass support for CSS design
- Optional WebSocket support with Spring Websocket
With the great development workflow:
- Easy installation of new JavaScript libraries with Yarn or Bower
- Build, optimization and live reload with Webpack or Gulp.js
- Testing with Karma, Headless Chrome and Protractor
And what if a single Web page application isn’t enough for your needs?
- Support for the Thymeleaf template engine, to generate Web pages on the server side
Technology stack on the server side
A complete Spring application:
- Spring Boot for easy application configuration
- Maven or Gradle configuration for building, testing and running the application
- “development” and “production” profiles (both for Maven and Gradle)
- Spring Security
- Spring MVC REST + Jackson
- Optional WebSocket support with Spring Websocket
- Spring Data JPA + Bean Validation
- Database updates with Liquibase
- Elasticsearch support if you want to have search capabilities on top of your database
- MongoDB and Couchbase support if you’d rather use a document-oriented NoSQL database instead of JPA
- Cassandra support if you’d rather use a column-oriented NoSQL database instead of JPA
- Kafka support if you want to use a publish-subscribe messaging system
Technology stack for microservices
Microservices are optional, and fully supported:
- HTTP routing using Netflix Zuul or Traefik
- Service discovery using Netflix Eureka or HashiCorp Consul
Ready to go into production:
- Monitoring with Metrics and the ELK Stack
- Caching with ehcache (local cache), hazelcast or Infinispan
- Optimized static resources (gzip filter, HTTP cache headers)
- Log management with Logback, configurable at runtime
- Connection pooling with HikariCP for optimum performance
- Builds a standard WAR file or an executable JAR file
- Full Docker and Docker Compose support
- Support for all major cloud providers: AWS, Cloud Foundry, Heroku, Kubernetes, OpenShift, Docker…