docs: stabilize explanations
This commit is contained in:
parent
06a99b6b23
commit
37c724b89f
52
README.md
52
README.md
@ -2,41 +2,75 @@
|
||||
|
||||
## À propos
|
||||
|
||||
Application mobile en React Native pour le projet du module P61 Développement avancé.
|
||||
Application mobile en [React Native](https://reactnative.dev/) pour le projet du module P61 Développement avancé.
|
||||
|
||||
Un tracker d'habitudes pour performer au boulot et dans la vie de tous les jours.
|
||||
|
||||
- [Sujet](./SUJET.md)
|
||||
- [Cahier des charges](./CAHIER-DES-CHARGES.md)
|
||||
- [Sujet](./docs/SUJET.md)
|
||||
- [Cahier des charges](./docs/CAHIER-DES-CHARGES.md)
|
||||
|
||||
## Membres du Groupe 7
|
||||
### Membres du Groupe 7
|
||||
|
||||
- [Théo LUDWIG](https://git.unistra.fr/t.ludwig)
|
||||
- [Haoxuan LI](https://git.unistra.fr/haoxuan.li)
|
||||
- [Maxime RUMPLER](https://git.unistra.fr/m.rumpler)
|
||||
- [Maxime RICHARD](https://git.unistra.fr/maximerichard)
|
||||
|
||||
## Prérequis
|
||||
## Développement du projet en local
|
||||
|
||||
### Prérequis
|
||||
|
||||
- [Node.js](https://nodejs.org/) >= 20.0.0
|
||||
- [npm](https://www.npmjs.com/) >= 10.0.0
|
||||
- [Expo Go](https://expo.io/client)
|
||||
|
||||
## Installation
|
||||
### Installation
|
||||
|
||||
```sh
|
||||
# Cloner le projet
|
||||
git clone git@git.unistra.fr:rrll/p61-project.git
|
||||
|
||||
# Installer les dépendances
|
||||
npm clean-install
|
||||
```
|
||||
|
||||
## Usage
|
||||
### Lancer l'application
|
||||
|
||||
```sh
|
||||
# Run the application
|
||||
npm run start
|
||||
```
|
||||
|
||||
# Lint and Test
|
||||
### Linting/Formatting/Tests
|
||||
|
||||
Le code est formaté grâce à [Prettier](https://prettier.io/) et vérifié grâce à [ESLint](https://eslint.org/) et à [TypeScript](https://www.typescriptlang.org/) pour s'assurer que le code respecte les bonnes pratiques de développement, et détecter en amont les possibles erreurs.
|
||||
|
||||
Nous utilisons également [Jest](https://jestjs.io/) pour les tests automatisés.
|
||||
|
||||
```sh
|
||||
# Lint
|
||||
npm run lint:prettier
|
||||
npm run lint:eslint
|
||||
npm run lint:typescript
|
||||
|
||||
# Test
|
||||
npm run test
|
||||
```
|
||||
|
||||
Une pipeline CI ([`.gitlab-ci.yml`](.gitlab-ci.yml)) est en place pour vérifier que le code respecte ces bonnes pratiques et que les tests passent.
|
||||
|
||||
### GitFlow
|
||||
|
||||
Le projet suit la convention [GitFlow](https://nvie.com/posts/a-successful-git-branching-model/) reposant sur 2 branches principales:
|
||||
|
||||
- `main` (ou `master`): Contient le code de la dernière version stable et déployé en production.
|
||||
- `develop`: Contient le code en cours de développement. Les nouvelles fonctionnalités et les correctifs de bugs sont fusionnés ici.
|
||||
|
||||
### Convention des commits
|
||||
|
||||
Les commits respectent la convention [Conventional Commits](https://www.conventionalcommits.org/) et [Semantic Versioning](https://semver.org/) pour la gestion des versions et des releases en fonction des commits.
|
||||
|
||||
Les commits doivent être **atomiques** c'est à dire qu'il respecte 3 règles:
|
||||
|
||||
- Ne concerne qu'un seul sujet (une fonctionnalité, une correction de bug, etc.)
|
||||
- Doit avoir un message clair et concis
|
||||
- Ne doit pas rendre de dépôt "incohérent" (bloque la CI du projet)
|
||||
|
@ -51,4 +51,4 @@ Vous serez évalués sur les aspects suivants :
|
||||
|
||||
## Exemple d’interfaces
|
||||
|
||||
![UI Example](./assets/images/ui-example.png)
|
||||
![UI Example](../assets/images/ui-example.png)
|
@ -1,13 +1,13 @@
|
||||
# PROJET 🚧
|
||||
|
||||
Pas de temps à perdre, commençons dès aujourd'hui à travailler sur l'accompagnement du projet.
|
||||
Pour celà, commençons par découvrir le [cahier des charges du projet](https://docs.google.com/document/d/1P1pD_TsTa8Cn4XT-hU0YF_xMx2BGqbXxG7Ta2oNcnOk/edit).
|
||||
Pour celà, commençons par découvrir le [cahier des charges du projet](./CAHIER-DES-CHARGES.md).
|
||||
|
||||
## 1 🚀 KICKSTART
|
||||
|
||||
### 1.1 Mettez vous par groupe
|
||||
|
||||
Renseignez ce fichier [Cahier des charges](./CAHIER-DES-CHARGES.md) avec le nom des étudiants de votre groupe
|
||||
Renseignez ce fichier [Google Sheets](https://docs.google.com/spreadsheets/d/1is3MSvOM94Gs6hfzfg-jJSGIqrrNzzBqDadrCNEQCok/edit#gid=0) avec le nom des étudiants de votre groupe
|
||||
|
||||
### 1.2 Créez votre projet
|
||||
|
||||
@ -17,7 +17,7 @@ Choisissez une application `blank`
|
||||
### 1.3 GitLab
|
||||
|
||||
- Ajoutez ce projet sur le Gitlab de l'université
|
||||
- Ajoutez les profs (@joeybronner et @g.baldi) en tant que "Reporter"
|
||||
- Ajoutez les profs ([@joeybronner](https://git.unistra.fr/joeybronner) et [@g.baldi](https://git.unistra.fr/g.baldi)) en tant que "Reporter"
|
||||
- Ajoutez tous les membres de votre groupe au projet
|
||||
|
||||
## 2 📱 DESIGN
|
||||
@ -57,7 +57,7 @@ Un Splashscreen est toujours plus élégant qu'un écran de lancement "tout moch
|
||||
|
||||
Implémentez le type de navigation que vous préférez et qui (d'après-vous) correspond le mieux à ce projet ⤵
|
||||
|
||||
Pour rappel, la librairie est [React Native Navigation](https://reactnavigation.org/docs/getting-started/) et les 3 types de navigations sont :
|
||||
Pour rappel, la librairie est [React Native Navigation](https://reactnavigation.org/./docs/getting-started/) et les 3 types de navigations sont :
|
||||
|
||||
- Stack _(à implémenter forcément)_
|
||||
- Drawer
|
||||
@ -97,6 +97,4 @@ Je recommande les librairies de composants suivantes :
|
||||
|
||||
N'hésitez pas à ajouter un de ceux-là (ou un autre) à votre projet et à en utiliser les composants.
|
||||
|
||||
---
|
||||
|
||||
N'oubliez pas de faire des commits réguliers à la fin de chaque séance pour éviter les conflits Git.
|
Reference in New Issue
Block a user