Skip to content
This repository has been archived by the owner on Oct 25, 2022. It is now read-only.

Latest commit

 

History

History
125 lines (78 loc) · 4.73 KB

BOILERPLATE_README.fr.md

File metadata and controls

125 lines (78 loc) · 4.73 KB

ember-boilerplate

Section Description
🎯 Objectifs et contexte Introduction et contexte du projet
🚧 Dépendances Dépendances techniques et comment les installer
🏎 Départ rapide Détails sur comment démarrer rapidement le développement du projet
🏗 Code et architecture Détails sur les composantes techniques de l’application
🔭 Améliorations possibles Améliorations, idées et refactors potentiels
🚑 Problèmes et solutions Problèmes récurrents et solutions éprouvées
🚀 Déploiement Détails pour le déploiement dans différents environnements

🎯 Objectifs et contexte

Support de navigateurs

Navigateur OS Contrainte

🚧 Dépendances

  • Node.js
  • NPM

Les versions canoniques des dépendances sont spécifiées dans les fichiers Dockerfile et .tool-versions.

🏎 Départ rapide

Variables d’environnement

Toutes les variables d’environnement requises sont documentées dans .env.dev.

Ces variables doivent être présentes dans l’environnement lorsque des commandes npm ou make sont exécutées. Plusieurs moyens sont à votre disposition pour ça, mais l’utilisation de nv est recommandée puisqu’elle fonctionne out of the box avec les fichiers .env.*.

Mise en place initiale

  1. Créer .env.dev.local à partir des valeurs vides de .env.dev
  2. Installer les avec make dependencies

Lancer l’application en mode développement

Pour démarrer un serveur de développement (avec FastBoot) :

$ npm run start

Bâtir l’application pour la production

Pour créer une build prête pour la production :

$ npm run build

Servir l’application en production

Pour lancer un serveur de production FastBoot avec le support d’un canonical host, SSL et authentification Basic, la commande suivante peut être exécutée une fois une build de production bâtie :

$ npm run server

Tests

La suite de tests peut être exécutée à l’aide de la commande suivante et ne nécessite pas de variables d’environnements puisqu’elle ne devrait pas créer d’effets de bord (eg. pas de requêtes networking, pas de lecture de cookies, etc.)

$ make test

Couverture des tests

Le niveau de couverture des tests peut être validé à l’aide des métriques définies dans .nycrc. Pour vérifier ce niveau, la commande suivante peut être exécutée une fois que la suite de tests a été complétée :

$ make check-code-coverage

Les résultats d’instrumentations du code sont également disponibles dans le dossier coverage.

Linting et formatting

Plusieurs outils de linting et de formatting peuvent être exécutés pour s’assurer du respect des bonnes pratiques de code :

  • make lint-scripts s’assure que le code TypeScript et JavaScript respecte nos bonnes pratiques
  • make lint-styles s’assure que le code SCSS respecte nos bonnes pratiques
  • make lint-templates s’assure que le code Handlebars respecte nos bonnes pratiques
  • make check-format valide que le code est bien formatté
  • make format formatte les fichiers en utilisant Prettier

Intégration continue

Pour s’assurer que le projet et son code sont en bon état, les outils de linting et de tests peuvent être exécutés en une seule commande :

$ ./scripts/ci-check.sh

🏗 Code et architecture

🔭 Améliorations possibles

Description Priorité Complexité Idées

🚑 Problèmes et solutions

🚀 Deploiement

Versions et branches

Chaque déploiement est effectué à partir d’un tag Git. La version du codebase est gérée avec incr.

Container

Un container Docker exposant un serveur FastBoot peut être créé avec make build, testé avec docker-compose up application et poussé dans un registre avec make push.