La libairie du Système de design gouvernemental du Québec (SDG) de IGO dont l'objectif est d'offrir une suite de composante Angular basé sur le système de design gouvernemental. Il offre aussi un assemblage cartographique pour faciliter l'intégration de carte tout en utilisant les techniques de IGO IGO2-LIB.
Section | Description |
---|---|
🚧 Requis | Dépendances requises |
🚀 Config du projet | Comment configurer le projet |
📜 Commandes | Commandes npm disponible |
🌎 Contribution | Explication minimale du flow de développement |
🧰 Dépannage | Liste des problèmes possible avec les solutions |
- Git
- Node.js qui inclus le Node Package Manager
- Extensions: Eslint, Prettier, Angular Language Service dans votre IDE
Installer la librairie:
npm install @igo2/sdg --save
La majorité des composants sont accessible au premier niveau d'importation:
import { YOUR_IMPORT_NAME } from "@igo2/sdg"
Il existe des sous-module comme pour le volet cartographique ainsi que des modules de base (core), Un exemple d'importation via un sous-module:
import { YOUR_IMPORT_NAME } from "@igo2/sdg/geo"
Commande | Description |
---|---|
start |
Lancer la démo |
lint |
Permet de valider la syntaxe du projet |
format |
Corriger automatiquement les erreurs de syntaxe |
test |
Permet de rouler la suite de test Karma |
- Prendre/assigner une sous-tâche Github en priorité avant une nouvelle story.
- Mettre cette sous-tâche/story en « In Progress ».
- Ensuite:
- Si nouvelle story, faire un kickoff technique avec le tech lead, l'architecte associé et désigneur si nécessaire.
- Pour une sous-tâche, simplement aviser la personne associée à la story liée.
- Faire ce qui est demandé dans la story/sous-tâche.
- Créer une PR sur Github avec une description la plus claire possible avec des screenshots/vidéos si changement visuel.
- Mettre la story/sous-tâche en « Code review ».
- Une fois approuvé, merger la PR. Si la tâche faite est une sous-tâche, simplement la mettre à « Done » sinon mettre la story à « QA ».
- Si nouvelle story, faire la validation sur la DEV de ce qui a été fait et mettre en « In Review ».
Ce projet utilise un déploiement automatisé qui est basé sur Conventional Commits, une convention des messages de commit. Il y une validation du message de commit.
Ressources:
- Semantic-Release comment ça fonctionne le format du message de commit
À documenter...
Le lien symbolique permet de développer un projet d'assemblage de manière intégré avec la librairie.
- Cloner un projet d'assemblage qui utilise cette librairie dans le dossier projects. Ex:
cd projects git clone https://github.com/infra-geo-ouverte/igo2-quebec git checkout next
- Assurez-vous que vos branches sélectionné de la lib et du projet sont compatibles
- Dans une fenêtre terminal, rouler la commande
npm i
pour installer les dépendances. - Assurez vous que l'installation n'a pas créé de dossier
node_modules
dans les répertoires de projetsprojects/PROJECT_NAME
. S'il existe, supprimer le ou du moins le dossier@igo2/sdg
. - Excéuter le build pour la librairie
npm run build -w @igo2/sdg
- Dans VsCode, vous pouvez lancer le processus à partir du panneau
Run and Debug
pour bénéficier des breakpoints sinon exécuter la commande (valider dans les scripts du projet)npm run link-sdg.start -w PROJECT_NAME