yarn
est utilisé sur le projet. Versions à vérifier :
- Node >= 12.9.3
- Yarn >= 1.17.0
Le projet est structuré autour d'espaces de travail yarn (yarn workspaces), afin de gérer les dépendances de manière unique et centralisée.
Chaque package est un espace de travail :
Dossier | Description |
---|---|
src/front | Application Create React App en Typescript |
src/server | Routes Express Server en Typescript |
Les applications react et les routes sont servies automatiquement via serve-my-app.
Commande | Description |
---|---|
yarn dev:front | Lance l'application front en local avec hot reloading |
yarn dev:storybook | Lance le storybook en local avec hot reloading |
yarn dev:server | Lance le server en local avec watcher |
yarn build | Transpile toutes les applications (fronts et server) |
yarn start | Sert toutes les applications (fronts et api) |
- Quand je prends (ou compte prendre) une feature, je passe sa carte Notion en
doing
, et je m'assigne dessus. - Je crée une branche depuis
master
nommée feat/XXX, fix/XXX, refacto/XXX, etc. - Au premier commit, je crée la Pull Request en draft, lui donne un titre clair (voir plus bas) et mets l'url de la carte notion en description. Je mets l'url de la PR dans la carte Notion.
- Un environnement de PR est généré automatiquement sur heroku.
- Quand ma PR est prête à être reviewed, je mets l'url de la page à review sur l'env de PR dans la description de PR, et en commentaire de la carte Notion.
- J'invite en reviewer les autres devs du projet (et quelqu'un d'extérieur au projet, selon son domaine de compétence).
- Quand la PR est approved, je peux la merger, en mettant un titre de commit comme indiqué plus bas, en précisant à la fin le numéro de PR. (C'est seulement celui qui ouvre la PR qui la merge (et en assume la responsabilité) !).
- Doivent commencer par l'emoji correspondant DIRECTEMENT EN CARACTÈRE UNICODE (
🎨
et pas:art:
), - Doivent contenir une description claire (peu importe la langue tant que tout le monde comprend),
- Doivent contenir une majuscule, un nom, un complément, et un signe de ponctuation.
- Pour les merge de PR, le commit doit contenir le numéro de PR entre parenthèse à la fin.
- Exemples :
✨ Ajout du formulaire de recherche sur la Home. (#134)
🐛 Fix select blur.
💚 Lint.
Emoji | Definition |
---|---|
✨ | Introducing new features |
🐛 | Fixing a bug |
🎨 | Improving structure / format of the code |
✅ | Adding tests |
💚 | Fixing CI Build |
♻ | Refactoring code |
⚡ | Improving performance |
🚧 | Work in progress |
🔥 | Removing code or files |
🚑 | Critical hotfix |
📝 | Writing docs |
🚀 | Deploying stuff |
💄 | Updating the UI and style files |
🔖 | Releasing / Version tags |
🐳 | Work about Docker |
🔧 | Changing configuration files |
✏ | Fixing typos |
💩 | Writing bad code that needs to be improved |
⏪ | Reverting changes |
🔀 | Merging branches |
📦 | Updating packages |
👽 | Updating code due to external API changes |
🚚 | Moving or renaming files |
💥 | Introducing breaking changes |
👌 | Updating code due to code review changes |
💡 | Documenting source code |
💬 | Updating text and literals |
🗃 | Performing database related changes |
🏗 | Making architectural changes |
📸 | Adding or updating snapshots |
Origine: gitmoji.carloscuesta.me
Sous mac:
⌃ + ⌘ + SPACE
pour choisir l'emoji,- Alfred Gitmoji workflow,
- gitmoji-cli.
Les commits et leurs emoji servent à générer le changelog automatiquement, il est donc important d'y prêter attention.