From 19ff6361a168b2d9fb28fc8b6ad5ffa6bb46d9e2 Mon Sep 17 00:00:00 2001 From: Valentin GHIRARDI Date: Wed, 28 Jan 2026 12:07:42 +0100 Subject: [PATCH] edited README.md --- README.md | 131 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 130 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 96d1ab5..0042cc8 100644 --- a/README.md +++ b/README.md @@ -1 +1,130 @@ -Filtrage ICS d'emploi du temps Zeus EPITA. +# Zeus Filter 🎓 + +Un service Python léger qui filtre l'emploi du temps S4 Lyon 2029 de l'EPITA depuis l'API Zeus selon vos groupes de TD et SH. + +## 📋 Description + +Zeus Filter récupère le calendrier global de votre classe depuis Zeus au format ICS et applique des filtres personnalisés selon vos groupes. Vous obtenez ainsi un calendrier .ics optimisé contenant uniquement vos cours, facilement intégrable dans Apple Calendar, Google Calendar ou tout autre client de calendrier. + +## ✨ Fonctionnalités + +- 🔄 Récupération et synchronisation automatique du calendrier depuis l'API Zeus +- 🎯 Filtrage par groupe de TD (1.1 ou 1.2) +- 📚 Filtrage par groupe de SH - Anglais & Ethique (1.1, 1.2 ou 1.3) +- 📍 Conservation des informations de salle +- 📱 Compatible avec Apple Calendar, Google Calendar, Android +- 🔗 URL simple et intuitive +- ⚡ Léger et rapide + +## 🚀 Usage + +### Calendrier global (tous les cours) + +``` +https://zeus.ghirardiv.fr/calendar.ics +``` + +### Calendrier filtré + +``` +https://zeus.ghirardiv.fr/calendar.ics?td=&sh= +``` + +#### Paramètres disponibles + +| Paramètre | Valeurs possibles | Description | +|-----------|-------------------|-------------| +| `td` | `1.1`, `1.2` | Votre groupe de TD | +| `sh` | `1.1`, `1.2`, `1.3` | Votre groupe de SH | + +### Exemple + +**Groupe TD 1.1 et SH 1.2 :** +``` +https://zeus.ghirardiv.fr/calendar.ics?td=1.1&sh=1.2 +``` + +## 📱 Intégration avec votre calendrier + +### Sur iPhone / iPad (Apple Calendar) + +1. Ouvrez l'application **Réglages** +2. Allez dans **Calendrier** > **Comptes Calendrier** > **Ajouter un compte** +3. Sélectionnez **Ajouter un autre compte...** > **Calendrier (abonnement)** +4. Collez votre URL personnalisée (par exemple : `https://zeus.ghirardiv.fr/calendar.ics?td=1.1&sh=1.2`) +5. Laissez coché **Utiliser SSL** et **Supprimer les alertes** +6. Personnalisez le nom d'affichage du calendrier (champ **Description**) +7. Appuyez sur **Enregistrer** + +### Sur Android (Google Calendar) / Outlook / Autres clients + +La plupart des clients de calendrier supportent l'abonnement à des calendriers ICS via URL. Consultez la documentation de votre client pour plus d'informations. + +## 🛠️ Installation (pour développeurs) + +### Prérequis + +- Docker +- Docker Compose +- Make + +### Installation locale + +```bash +# Cloner le dépôt +git clone https://git.ghirardiv.fr/valentin/zeus-filter.git +cd zeus-filter + +# Configurer les variables d'environnement +cp .env.empty .env +# Éditer le fichier .env avec vos paramètres +vim .env + +# Créer le fichier compose.override.yml pour exposer le port (ou configuration réseau avancée si nécessaire) +cat > compose.override.yml << EOF +services: + zeus-filter: + ports: + - 80:80 +EOF + +# Lancer le service +make up +``` + +Le service sera accessible sur `http://localhost` + +### Commandes utiles + +```bash +make build # Construire l'image Docker +make up # Démarrer le service +make down # Arrêter le service +make restart # Redémarrer le service +make logs # Afficher les logs +``` + +## 🏗️ Architecture + +``` +zeus-filter/ +├── app/ # Code source Python +├── .env.empty # Template de configuration +├── Dockerfile # Configuration de l'image Docker +├── compose.yml # Configuration du container Docker +└── Makefile # Gestionnaire de commandes +``` + + +## 📄 Licence + +Ce projet est destiné à un usage personnel et éducatif pour les étudiants de l'EPITA Lyon S4 2029. + +## 🔗 Liens utiles + +- Service en ligne : [zeus.ghirardiv.fr/calendar.ics](https://zeus.ghirardiv.fr/calendar.ics) +- Dépôt Git : [git.ghirardiv.fr/valentin/zeus-filter](https://git.ghirardiv.fr/valentin/zeus-filter) + +--- + +Développé avec ❤️ pour les étudiants de l'EPITA Lyon