Technology stack
Technology stack on the client side
Single Web page application:
- Angular or React or Vue
- Responsive Web Design with Twitter Bootstrap
- HTML5 Boilerplate
- Compatible with modern browsers (Chrome, FireFox, Microsoft Edge...)
- Full internationalization support
- Optional Sass support for CSS design
- Optional WebSocket support with Spring Websocket
With the great development workflow:
- Installation of new JavaScript libraries with NPM
- Build, optimization and live reload with Webpack
- Testing with Jest 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 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 and Pulsar support if you want to use a publish-subscribe messaging system
Technology stack for microservices
Microservices are optional, and fully supported:
- HTTP routing using Spring Cloud Gateway
- Service discovery using HashiCorp Consul or Netflix Eureka
Ready to go into production:
- Monitoring with Metrics and the ELK Stack
- Caching with ehcache (local cache), Caffeine (local cache), Hazelcast, Infinispan, Memcached or Redis
- 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, GCP, Heroku, Kubernetes, OpenShift, Azure, Docker...