Technology stack – CLIENT side
Single page Web application per i consumatori e per i partner:
- Responsive Web Design
- HTML5
- Twitter Bootstrap
- AngularJS
- Compatible con IE9+ e tutti i browser moderni
- Supporto completo per la internazionalizzazione con Angular Translate
- Sass per il design CSS
Workflow di sviluppo client side:
- Gestione delle librerie JavaScript con Bower
- Build, optimizazione e live reload con Gulp.js
- Testing con Karma e PhantomJS
- Support del template engine Thymeleaf per la generazione server side del corpo delle mail
Technology stack – SERVER side
Applicazione Spring che espone le API REST usate da client web e app:
- Spring Boot runnable war
- Spring Security integrato con Keycloak e Apache APISIX
- Spring MVC REST + Jackson
- Spring Data JPA + Bean Validation
- Gestione degli aggiornamenti del database con Liquibase
- MariaDB
Workflow di sviluppo server side:
- Mono repo gitlab
- Configurazione Maven per build, test e packaging della applicazione
- CI/CD gitlab
- Per potere distribuire lo sviluppo mantenendo la certezza della compatibilità e allineamento con i sistemi di produzione abbiamo configurato dei contenitori docker.
- Documentazione integrata con i risultati dei test case grazia a Spring Rest Docs e Asciidoctor
Nell’ecosistema non mancano degli script che utilizzano le librerie Apache Camel per l’import di dati da fonti esterne (file csv ottenuti tramite ftp, allegati delle mail, …).