Scambialibri è una piattaforma Web per la compravendita di libri scolastici trasversalmente all'istituto di appartenenza, mettendo in comunicazione i venditori con gli eventuali compratori.
Per poter girare correttamente ha bisogno dei seguenti software:
- Node.js v8+
angular-cli
v6+- Shell bash (per lo script di deploy, non fondamentale)
Per installare il progetto si può usare il seguente script:
git clone [email protected]:BarsantiLab/scambialibri-frontend.git
cd scambialibri-frontend
npm install
Una volta installati i pacchetti il frontend è pronto per essere avviato.
Per avviare il progetto sulla macchina locale è sufficiente lanciare questo comando:
npm start
Verranno compilati i file e il frontend verrà servito all'indirizzo http://localhost:8080
. Per modificare le impostazioni riguardo il tool di compilazione consultare il file .angular-cli.json
, mentre per le impostazioni del frontend vedere i file dentro la cartella environments
.
Per il deploy al momento viene utilizzato un semplice script bash (build.sh
) che compila i sorgenti, crea un archivio compresso con l'output e in base all'environment specificato carica su diverse directory remote tramite scp
. Dopo aver caricato l'archivio invia un comando via ssh
per decomprimere l'archivio caricato. A differenza del backend non è necessario riavviare il processo con pm2
perché verrà caricata soltanto la parte statica.
Per adattarlo alle proprie macchine cambiare le righe 33 e 34 cambiando l'URL, eventualmente l'utente e la path sulla quale vengono caricati gli archivi.
Questo è solo una misura temporanea, in futuro verrà attivato CircleCI per le operazioni ci Continuous Integration e Continuous Delivery (vedi Progetti futuri).
Questa è una lista delle modifiche future che verranno implementate man mano lato frontend. Non sono in ordine temporale, né di importanza.
- Integrazione con CircleCI per continuous integration/delivery e CodeClimate per la quality assurance.
- Creazione di un container Docker (trasversale a tutti i progetti LoScambialibri.it).
- Integrazione di unit testing per le API.
- Integrazione di un client MQTT per la chat real-time.
- Integrazione automatica di una strategia di SemVer.
- Integrazione di stategie di localizzazione e internaziolizzazione, comprendente la traduzione completa del frontend.
LoScambialibri.it è sempre in cerca di menti che si uniscano nel progetto, in modo di condividere le proprie conoscenze e mettersi a confronto con altri colleghi!
Per avere maggiori informazioni consulta CONTRIBUTING.md e leggi su come fare la tua parte!
scambialibri-api
: server REST che fornisce le API per questo frontend.
- Davide Rossetto - Reviewer and first maintainer - DavideRoss
- Marco Rubin - Presidente di LoScambialibri.it e tester
Il progetto è coperto dalla licenza MIT - vedere la LICENSE per i dettagli.