Skip to content

Commit

Permalink
v1.0 - Aurion Synchronizer
Browse files Browse the repository at this point in the history
Merge pull request #13 from LBF38/development
  • Loading branch information
LBF38 authored Jan 14, 2023
2 parents 559734a + dc93e43 commit 508cb65
Show file tree
Hide file tree
Showing 47 changed files with 32,883 additions and 4,519 deletions.
12 changes: 11 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
.env
/node_modules
/node_modules
aurion.ics

.DS_Store

CalAurion-NG/node_modules/

# server build
build/

CalAurion-NG/
5 changes: 5 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions .idea/inspectionProfiles/Project_Default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/jsLibraryMappings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions .idea/markdown.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions .idea/planningAurion.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

25 changes: 25 additions & 0 deletions .idea/watcherTasks.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

55 changes: 52 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,60 @@ Ainsi, le calendrier dans notre application de calendrier (sur téléphone ou au

## Installation

Ce projet est principalement codé en JavaScript et utilise NodeJS.
Ce projet est principalement codé en TypeScript et utilise NodeJS.
Pour lancer un script JS, utiliser la commande :

```nodejs
```bash
node [nom fichier].js
```

Plus d'explications viendront plus tard dans le projet.
Pour lancer un script TypeScript, utiliser la commande :

```bash
ts-node [nom fichier].ts
```

Pour lancer le serveur de développement, utiliser la commande :

```bash
pnpm dev
```

ou

```bash
pnpm run dev
```

> **Note**
> Passage à `pnpm` plutôt que `npm` pour gérer les dépendances.
*Plus d'explications viendront plus tard dans le projet.*

## Roadmap

- [ ] Backend
- [x] Connexion de l'utilisateur pour récup user token
- [x] Récupération des données à partir de l'api ENSTA Bretagne (AURION)
- [ ] Traitement et conversion au format ics
- [x] Génération d'un fichier ics
- [ ] Gérer les différences, les majs de calendrier, etc...
- [ ] Génération d'un lien automatique pour synchronisation avec calendrier
- [x] Gérer les erreurs ou alerter si problème.
- [ ] Frontend
- [x] Site internet simple et facile d'utilisation
- [x] Interface de login de base (pour connexion ENSTA B)
- [x] username
- [x] password
- [ ] Passage à interface pour récup calendrier
- [x] V1
- [x] paramétrage des dates de la période à prendre
- [x] Interface pour visualisation des changements
- [x] Lien de téléchargement du fichier ics
- [ ] V2
- [ ] Lien de synchronisation directement
- [ ] la synchro se fait automatiquement en backend avec le calendrier de l'utilisateur (que le calendrier soit : google calendar, outlook, apple calendar, ...)
- [ ] Vérification avant déploiement
- [ ] Vérif sécurité
- [ ] ne pas pouvoir accéder à la page après login si ne fonctionne pas.
- [ ] Documentation du code et du projet
22 changes: 22 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Documentation de l'API et du projet

Ce projet consiste à récupérer automatiquement les informations du site de l'ENSTA Bretagne (<https://formation.ensta-bretagne.fr>) pour récupérer le planning de l'utilisateur qui se connecte via le formulaire de la page principale.

## Informations générales

Parcours de l'utilisateur :

- L'utilisateur se connecte via la page principale de mon serveur (`index`).
- Si tout fonctionne bien, il est redirigé vers une page pour choisir la période de planning qu'il veut récupérer. (`planning/pull`)
- Sinon, il est redirigé vers la page principale avec une explication de l'erreur (`index`).
- L'utilisateur choisit la période de planning qu'il veut récupérer.
- Si tout fonctionne bien, il est redirigé vers une page pour récupérer un lien vers le fichier `ics` ou le télécharger. (`planning/download`)
- Sinon, il est redirigé vers la page précédente avec une explication de l'erreur (`planning/pull`).
- L'utilisateur récupère le lien vers le fichier `ics` ou le télécharge.

## Routes de l'API

- `GET /` : Page principale du serveur.
- `POST /planning/pull` : Récupère le planning de l'utilisateur.
- `GET /planning/download` : Télécharge le fichier `ics` du planning de l'utilisateur.
- `POST /login` : Connexion de l'utilisateur.
Loading

0 comments on commit 508cb65

Please sign in to comment.