Tecnologie
Le versioni delle seguenti tecnologie utilizzate all’interno del progetto sono reperibili all’interno del file package.json
.
Typescript
Il web client è scritto in typescript, linguaggio tipizzato che viene poi transpilato in javascript in seguito al processo di build.
React
React è la libreria scelta per la realizzazione della interfaccia utente.
Material-UI
Alcuni componenti utilizzati sono stati incorporati dalla libreria Material-UI che fornisce una serie di componenti React con una interfaccia consistente.
React Redux
La libreria React Redux consente l’implementazione di architetture Redux su applicazioni React, integra le componenti per React e le altre parti dell’architettura descritta nel capitolo architettura.
Jest
Jest è la libreria scelta per l’implementazione dei test, in quanto consigliata dalla comunità e dalla documentazione ufficiale di Redux.
Prettier
Il codice è formattato tramite il formatter Prettier, così da aderire tutti alle stesse regole stilistiche nella scrittura del codice.
Webpack
Webpack è un tool di build-automation che permette di configurare il progetto e le sue dipendenze attraverso un file arbitrario (al momento il progetto comprende due configurazioni, una per l’ambiente di sviluppo tramite il file webpack.dev.js
e una di deploy tramite il file webpack.prod.js
). Grazie a questo strumento è possibile riprodurre autonomamente il processo di build mediante continuous-integration.
Docker
Docker permette di creare facilmente container per definire ambienti di installazione e configurazione definiti e riproducibili in qualsiasi macchina.