Skip to content

ArnaudFlaesch/CashManager

Repository files navigation

CashManager

Node.js CI Quality Gate Status Coverage Code Smells Security Rating codecov Codacy Badge Codacy Badge Known Vulnerabilities Cypress.io

Description

Le projet est déployé via Github Pages et accessible à cette addresse : https://arnaudflaesch.github.io/CashManager/.

Démarrage

  • Installation des dépendances

    npm install

  • Démarrage de l'application

    npm start

L'application est ensuite accessible à l'addresse http://localhost:4200.

  • Démarrage du backend

Il est nécessaire d'exécuter le backend et sa base de données pour que l' application fonctionne. Les sources et le README sont accessibles ici :https://github.com/ArnaudFlaesch/Dash-WebServices.

Pour lancer le frontend sans avoir à utiliser le backend en local, il est possible d'exécuter la commande :

npm run start:dev

Cette commande va permettre de se connecter au backend déployé sur Heroku directement.

Sinon, il est possible de récupérer le backend via Docker en commençant par sa base de données :

docker pull postgres:13.2-alpine docker run -p 5432:5432 -d -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=dash postgres:13.2-alpine;

et son image Docker :

docker pull arnaudf93/dashwebservices:latest

puis de l'exécuter via la commande :

docker run -p 8080:8080 -d -e OPENWEATHERMAP_KEY=${OPENWEATHERMAP_KEY} -e STRAVA_CLIENT_ID=${STRAVA_CLIENT_ID} -e STRAVA_CLIENT_SECRET=${STRAVA_CLIENT_SECRET} -e STEAM_API_KEY=${STEAM_API_KEY} -e AIRPARIF_API_TOKEN=${AIRPARIF_API_TOKEN} arnaudf93/dashwebservices:latest

en renseignant les variables d'environnement nécessaires en suivant le README du backend ici : https://github.com/ArnaudFlaesch/Dash-Webservices#demarrage

Commandes utiles

npm run test

Exécute les tests Jest (*.spec.ts) présents dans le répertoire src.

npm run test:watch

Même chose que la commande précédente, mais les tests seront réexécutés à chaque changement du code pour vérifier que l'application fonctionne toujours correctement.

npm run cy:open

Lance le dashboard Cypress pour pouvoir exécuter manuellement les tests End-to-End.

npm run eslint

Affiche la liste des erreurs liées au code Typescript à partir des règles définies dans le fichier .eslintrc.js.

npm run lint:styles

Affiche la liste des erreurs liées au code CSS/Sass à partir des conventions et règles définies dans le fichier .stylelintrc.json.

Coverage

Coverage