data | ||
prototypes/interface | ||
static | ||
templates | ||
.gitignore | ||
app.py | ||
date_tools.py | ||
git.py | ||
LICENSE | ||
main_cli.py | ||
main_gui.py | ||
objects.py | ||
README.md | ||
requirements.txt | ||
rooms_get.py |
UniSquat
Une application pour trouver rapidement les salles disponibles dans l'Université de Strasbourg.
Cela vous permet par exemple, si vous êtes élève, de chercher un endroit pour travailler, ou si vous êtes enseignant, de trouver une salle libre en cas de changement d'emploi du temps.
Cette application dispose d'une interface Web fonctionnant avec Flask. Une instance de cette application est disponible en ligne ici.
Fonctionnalités
- 🔎 Visualiser les salles libres de plusieurs départements en même temps (par exemple : l'UFR de Math-Info et l'EOST).
- ⏰ Connaître la période de disponibilité d'une salle.
- 🔜 Les salles prochainement libres sont également affichées, avec leur prochaine disponibilité.
- ⭐ Marquer des salles comme favorites, pour les afficher en haut de la page.
- Les favoris sont stockés dans l'URL de la page. Cela permet de les partager ou de les enregistrer simplement, puisqu'il suffit de partager l'URL ou de l'ajouter aux marque-pages.
- 📅 Rechercher les salles libres à une date précise.
- 🪶 Application légère pour l'utilisateur :
- Pas de JavaScript, tous les calculs sont faits coté serveur.
- Pas de Local Storage, cookies ou autres bibliothèques CSS.
Dépendances
Le modules Python suivants sont requis (ils peuvent être installés avec pip
) :
datetime
icalendar
ics
tatsu
(dépendance deics
)requests
flask
(requis pour l'interface Web)
Vous pouvez aussi installer directement les dépendances avec cette commande :
pip install -r requirements.txt
Comment lancer l'interface Web (Flask)
Dans la racine du dossier :
flask run
C'est l'interface qui est activement supportée. N'hésitez pas à héberger votre propre instance d'UniSquat.
Interfaces obsolètes
Ces interfaces ont été crées à des fins de test. Elles ne sont plus mises à jour, et peuvent être instables.
Interface en ligne de commande
Pour la lancer :
python main_cli.py
Interface graphique (Qt5)
Une interface graphique utilisant la bibliothèque Qt. Elle nécessite le module PyQt5
.
Pour la lancer :
python main_gui.py
Crédits
Le code est sous licence GPLv3.
UniSquat est créé par deux étudiants de l'université de Strasbourg. Rendez-vous sur la page d'accueil d'UniSquat pour plus d'informations.
Notre travail est fait de façon bénévole, mais si vous souhaitez nous soutenir, n'hésitez pas à passer sur le campus de l'Esplanade pour nous offrir un chocolat chaud ❤
Vous pouvez nous contacter sur nos comptes Git respectifs. Vous pouvez aussi contacter @ayte sur son blog.