Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ajout des regles #9

Open
wants to merge 23 commits into
base: gitbook
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 3 additions & 31 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,13 @@
# 👋 Bienvenue

Papillon est une application ouverte à tous ceux qui veulent participer au projet. Rejoignez-nous pour contribuer au développement du projet
Papillon est une application ouverte à tous ceux qui veulent participer au projet. Rejoignez-nous pour contribuer au développement du projet 
Wateir marked this conversation as resolved.
Show resolved Hide resolved

{% hint style="danger" %}
Cette documentation est en cours de réécriture progressive, nous vous invitons à venir régulièrement pour voir les avancements!
Cette documentation est en cours de réécriture progressive, nous vous invitons à venir régulièrement pour voir les avancements! 
Wateir marked this conversation as resolved.
Show resolved Hide resolved
{% endhint %}

{% hint style="info" %}
Le projet est conçu pour être simple et accessible, **même aux débutants**, avec des composants et des documentations imaginées pour vous.
 Le projet est conçu pour être simple et accessible, **même aux débutants**, avec des composants et des documentations imaginées pour vous.
Wateir marked this conversation as resolved.
Show resolved Hide resolved
{% endhint %}

> Cette documentation est votre point de rencontre avec les outils Papillon. Et pour toute demande, retrouvez-nous sur notre [Discord](https://discord.gg/UQ7mH82vQ9)!

### Pour les utilisateurs

{% content-ref url="kb/issue/" %}
[issue](kb/issue/)
{% endcontent-ref %}

### Pour les développeurs

Papillon est ouvert à tous les développeurs, peu importe leur niveau. C'est un moyen génial de découvrir la programmation sur un projet qui vous est utile !

{% content-ref url="develop/getting-started/" %}
[getting-started](develop/getting-started/)
{% endcontent-ref %}

{% content-ref url="develop/build/" %}
[build](develop/build/)
{% endcontent-ref %}

### Documents légaux

{% content-ref url="legal/privacy.md" %}
[privacy.md](legal/privacy.md)
{% endcontent-ref %}

{% content-ref url="legal/terms.md" %}
[terms.md](legal/terms.md)
{% endcontent-ref %}
32 changes: 13 additions & 19 deletions SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,19 @@

* [👋 Bienvenue](README.md)

## Support <a href="#kb" id="kb"></a>
## Questions fréquentes <a href="#kb" id="kb"></a>

* [⁉️ Questions fréquentes](kb/issue/README.md)
* [📊 Moyennes générales](kb/issue/averages.md)
* [✅ Sécurité des données personnelles](kb/issue/privacy.md)
* [🏫 Établissement manquant](kb/issue/etablissement-manquant.md)
* [📊 Moyennes générales](kb/averages.md)
* [✅ Sécurité des données personnelles](kb/privacy.md)
* [🏫 Établissement manquant](kb/etablissement-manquant.md)

## Développeurs <a href="#develop" id="develop"></a>
## Côté développeur

* [🦋 Commencer avec Papillon](develop/getting-started/README.md)
* [Tester avec Expo Go](develop/getting-started/tester-avec-expo-go.md)
* [Préparer l'environnement de développement](develop/getting-started/preparer-lenvironnement-de-developpement.md)
* [Structure](develop/getting-started/structure.md)
* [💻 Compiler Papillon](develop/build/README.md)
* [Pour iOS](develop/build/pour-ios.md)
* [Pour Android](develop/build/pour-android.md)
* [Avec EAS](develop/build/avec-eas.md)

## Légal
Wateir marked this conversation as resolved.
Show resolved Hide resolved

* [📖 Politique de confidentialité](legal/privacy.md)
* [☑️ Conditions générales d'utilisation](legal/terms.md)
* [Commencer avec Papillon](cote-developpeur/commencer-avec-papillon/README.md)
* [Tester avec Expo Go](cote-developpeur/commencer-avec-papillon/tester-avec-expo-go.md)
* [Préparer l'environnement de développement](cote-developpeur/commencer-avec-papillon/preparer-lenvironnement-de-developpement.md)
* [Structure](cote-developpeur/commencer-avec-papillon/structure.md)
* [Compiler avec Papillon](cote-developpeur/compiler-avec-papillon/README.md)
* [Pour iOS](cote-developpeur/compiler-avec-papillon/pour-ios.md)
* [Pour Android](cote-developpeur/compiler-avec-papillon/pour-android.md)
* [Avec EAS](cote-developpeur/compiler-avec-papillon/avec-eas.md)
29 changes: 29 additions & 0 deletions cote-developpeur/commencer-avec-papillon/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
description: >-
Afin de pouvoir avoir un projet qui fonctionne et qui puisse perdurer dans le temps, merci de respecter ces quelques règles simples.
---

# Commencer avec Papillon

***

{% hint style="danger" %}
L'IA n'est pas autorisée sous peine de sanction.
{% endhint %}

1. \[ ] Vous avez testé de build le projet avec vos modifications et ce build a réussi
2. &#x20;\[ ] Vous respectez les conventions de codage et de nommage du projet&#x20;
Wateir marked this conversation as resolved.
Show resolved Hide resolved
3. \[ ] Vous utilisez la tabulation pour l'indentation afin de maintenir un code lisible&#x20;
4. \[ ] Cette pull request n'est pas un duplicata d'une autre&#x20;
5. \[ ] Cette pull request est prête à être revue (review) et fusionnée (merge)&#x20;
6. \[ ] Il n'y a pas de TODO (aka des annotations pour du code manquant) dans vos modifications&#x20;
7. \[ ] Il n'y a pas d'erreurs de langue dans votre code (grammaire, vocabulaire, conjugaison, orthographe) \[ ] Les détails des changements ont été décrits ci-dessous&#x20;
8. \[ ] Cette pull-request n'est pas une "breaking-change" (des modifications qui vont entraîner la modification du fonctionnement de certaines fonctionnalités déjà existantes)
Wateir marked this conversation as resolved.
Show resolved Hide resolved

Toute pull request sera immédiatement refusée si elle ne respecte pas l'ensemble de ses règles.
Wateir marked this conversation as resolved.
Show resolved Hide resolved

{% hint style="info" %}
Tout code doit respecter les règles de EsLint.

Si vous n'avez pas EsLint vous pouvez vous en apprendre plus ici : [EsLint](https://eslint.org/docs/latest/use/getting-started)
{% endhint %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Préparer l'environnement de développement

### Prérequis

Pour commencer à développer Papillon vous avez besoin des outils suivants:

* Git ([https://git-scm.com](https://git-scm.com/))
* NodeJS ([https://nodejs.org/en](https://nodejs.org/en))
* xCode, si vous comptez compiler pour iOS
* Une fork de Papillon
Wateir marked this conversation as resolved.
Show resolved Hide resolved
* Un IDE comme VSCode ([https://code.visualstudio.com](https://code.visualstudio.com))

### Installation du repo

Ce script effectue un clonage du dépôt git de Papillon auquel vous ne pouvez pas effectuer de changements, c'est pour cela qu'il vous faut remplacer l'url après `clone` par celle de votre fork que vous avez créé précédemment.

{% tabs %}
{% tab title="npm" %}
```sh
git clone git@github.com:PapillonApp/Papillon.git
cd Papillon
npm install
```
{% endtab %}

{% tab title="pnpm" %}
```sh
git clone git@github.com:PapillonApp/Papillon.git
cd Papillon
pnpm install
```
{% endtab %}
{% endtabs %}

Et voilà vous avez maintenant votre propre version de Papillon

### Vers l'infini et l'au delà...!

Voilà! Vous avez une copie locale de Papillon prête à être améliorée par vos soins, pourquoi ne pas jeter un coup d'œuil à comment lancer le serveur de développement ou en apprendre un peu plus sur la structure du code?

La seule limite est votre imagination!
25 changes: 25 additions & 0 deletions cote-developpeur/commencer-avec-papillon/structure.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Structure

```
├── assets (dossier des ressources)
├── ios (dossier natif ios contenant les fichiers liés à xcode et les modules natifs)
├── android
Wateir marked this conversation as resolved.
Show resolved Hide resolved
└── src
├── addons
├── background
├── components (différents composants utilisés dans les vues)
├── consts
├── hooks
├── providers
├── router (gestion du routage)
├── services (dossier pour la gestion de la récupération de données)
├── stores (dossier pour la gestion du stockage de données)
├── utils (fonctions utilitaires diverses : téléchargement, ouverture de fichiers, formatage)
├── views
│   ├── account (vues liées au compte : messages, notes, emploi du temps, etc.)
│   ├── addon
│   ├── login (écrans de connexion pour tous les fournisseurs)
│   ├── settings (pages de paramètres)
│   └── welcome (écran des notes de version, écran de première installation, écran de sélection de compte)
└── widgets (utilisé dans la page d’accueil)
```
30 changes: 30 additions & 0 deletions cote-developpeur/commencer-avec-papillon/tester-avec-expo-go.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Tester avec Expo Go

{% hint style="warning" %}
Les fonctionnalités natives ne sont pas supportées sur Expo Go et vos appareils doivent être sur le même réseau.
{% endhint %}

### Prérequis

* L'application « Expo Go » (disponible sur [Play Store](https://play.google.com/store/apps/details?id=host.exp.exponent) ou sur [l’App Store](https://apps.apple.com/fr/app/expo-go/id982107779)).
* Le dépot git de Papillon.

### Utilisation

1. Lancer le serveur de développement

{% tabs %}
{% tab title="npm" %}
```sh
npm run start
```
{% endtab %}

{% tab title="pnpm" %}
```sh
pnpm start
```
{% endtab %}
{% endtabs %}

2. Sanner le QR Code qui s'affiche à l'écran qui vous redigera vers l'application Expo Go qui chargera ensuite l'application.
2 changes: 2 additions & 0 deletions cote-developpeur/compiler-avec-papillon/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Compiler avec Papillon

2 changes: 2 additions & 0 deletions cote-developpeur/compiler-avec-papillon/avec-eas.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Avec EAS

2 changes: 2 additions & 0 deletions cote-developpeur/compiler-avec-papillon/pour-android.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Pour Android

13 changes: 13 additions & 0 deletions cote-developpeur/compiler-avec-papillon/pour-ios.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Pour iOS

{% hint style="danger" %}
Pour compiler Papillon pour iOS, vous devez posséder un Mac.
{% endhint %}

1. Dans la racine du projet, exécuter `pnpm prebuild`
Wateir marked this conversation as resolved.
Show resolved Hide resolved
2. Ouvrir `Papillon.xcworkspace` avec xCode (**TRÈS IMPORTANT**)
3. Si vous n'avez pas de compte payant Apple Developer: changer les teams pour le signing et enlever les "Assiocated Domains"
4. Sélectionner `Papillon (release)` au niveau des schemes et votre target (physique ou simulateur)
5. Attendre un peu et c'est tout bon!

![CleanShot 2024-10-03 at 21 41 06](https://github.com/user-attachments/assets/97efe4bc-526e-45b4-b44c-eb281c25a4cc) ![CleanShot 2024-10-03 at 21 42 24](https://github.com/user-attachments/assets/7642b6d0-f296-4e49-89ee-a2f7e81ef728) ![CleanShot 2024-10-03 at 21 44 13](https://github.com/user-attachments/assets/04a8df53-b33f-4909-8738-da2fb131e87c)
30 changes: 30 additions & 0 deletions kb/averages.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
cover: ../.gitbook/assets/Frame 1050.png
coverY: 0
---

# 📊 Moyennes générales

Papillon récupère automatiquement votre moyenne générale depuis votre service scolaire si celui-ci le fournit. Mais dans le cas ou votre moyenne est indisponible, Papillon va venir automatiquement la calculer.

{% hint style="warning" %}
Le calcul automatique des moyennes **n'est pas une information exacte**, mais une estimation qui essaye de s'en rapprocher un maximum.
{% endhint %}

### Le problème

Nous n'avons pas connaissance des algorithmes de calcul de moyennes des services scolaires. C'est pour cela que la communauté s'investit pour en fournir [une alternative documentée](https://github.com/PapillonApp/Papillon/blob/main/src/utils/grades/getAverages.ts) et la plus efficace possible. Cependant, celle-ci ne fonctionne pas dans toutes les configurations.

### Ma moyenne est incorrecte, que faire ?

#### La question de la méthode de calcul

Lorsque l'on parle de **moyenne générale**, on parle ici de la moyenne pondérée de la moyenne des matières, en prenant donc en compte les coefficients, barèmes, notes bonus et autres variables. Il se peut que selon les paramètres considérés, cela change.

#### Aidez-nous à mieux comprendre vos notes

Venez sur le [Discord](https://discord.gg/wVKWBRTbfh) nous partager votre problème ! Cela peut nous aider à améliorer le calcul pour tous les utilisateurs !

{% hint style="info" %}
Pour considérer cela comme problématique, il faut une différence **notable** avec votre moyenne réelle, d'au delà de 0.30 points environ.
{% endhint %}
21 changes: 21 additions & 0 deletions kb/etablissement-manquant.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# 🏫 Établissement manquant

Sur les logiciels Pronote et Skolengo, il existe un moyen de rechercher des établissements à proximité. Cependant, il est possible de ne pas trouver le sien. Pourquoi et que faire ?

### Pourquoi il manque mon établissement, pouvez-vous l'ajouter ?
Wateir marked this conversation as resolved.
Show resolved Hide resolved

Les listes ne sont pas maintenues par Papillon et cela relève de l'établissement si il souhaite être indexé dans l'annuaire ou non. Nous ne pouvons rien y faire.\\

{% hint style="info" %}
Ce n'est pas parce que votre établissement n'apparaît pas qu'il est incompatible avec Papillon : **il peut quand même fonctionner.**
{% endhint %}

### **Autres moyens de se connecter**

#### **Avec un QR-Code sur Pronote**

Connecte-toi à Pronote via un ordinateur ou un autre appareil, et lie Papillon à l'aide de l'option QR code mobile, cela te permet de ne pas chercher ton établissement
Wateir marked this conversation as resolved.
Show resolved Hide resolved

#### Avec une URL

Lorsque tu es sur la page de ton établissement via un navigateur web, tu peux copier le lien en barre d'adresse et te connecter via une URL à Papillon !
13 changes: 13 additions & 0 deletions kb/privacy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# ✅ Sécurité des données personnelles

Papillon est un projet libre et open-source, et pour nous la sécurité de vos données personnelles est un sujet essentiel. C'est pour cela que l'application **ne partage aucune donnée avec des tiers**, et ne communique jamais avec des services étrangers à vos services scolaires, ni même avec des serveurs de Papillon.
Wateir marked this conversation as resolved.
Show resolved Hide resolved

{% hint style="info" %}
L'intégralité des données récupérées sont traitées depuis l'application, et **jamais** sur un serveur dont vous n'aurez pas connaissance.
{% endhint %}

Vos identifiants ne sont pas conservés par l'application ni transmises à Papillon et vos informations de connexion ne quittent jamais votre appareil.

### Comment nous faire confiance ?

Le code de l'application est **open-source**. C'est-à-dire que n'importe qui peut le consulter et vérifier son fonctionnement librement. Cela assure la sécurité de vos données car il est possible pour tous d'examiner le code exécuté sur votre téléphone.