Backlog #1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fonctionnalités principale
Sisyphe est une application web de saisie de temps de travail.
Elle permet à des utilisateurs authentifiés d'entrer le nombre d'heures travaillées chaque jour pour différentes catégories.
Les utilisateurs peuvent indiquer leur temps de travail pour n'importe quelle date, passée ou future.
Les utilisateurs peuvent créer, éditer et supprimer des catégories.
Les catégories sont partagées entre tous les utilisateurs.
L'application peut fournir des rapports sur les temps travaillés.
Les rapports indiquent le détail des temps de travail par catégorie pour chaque utilisateur pour une période sélectionnée.
Les rapports incluent les totaux des temps de travail par utilisateurs et par catégorie pour la période sélectionnée.
Détails techniques
Framework front
On peut utiliser n'importe quel framework, tels que fomantic-ui, tailwind, bulma, foundation, bootstrap ou picocss.
Base de données
Utiliser une base de données pour stocker les données des utilisateurs.
flask-sqlalchemy et flask-alembic sont de bons candidats.
On pourra utiliser une base de données .sqlite pour l'environnement de développement et une base de données en mémoire pour les tests unitaires.
Authentification
Ne pas gérer d'authentification directement via l'application, mais permettre à des utilisateurs de s'authentifier via OpenID Connect en utilisant la bibliothèque authlib.
On pourra s'inspirer des clients de l'environnement de développement de Canaille pour avoir un exemple succinct d'utilisation d'authlib dans une application Flask.
On pourra utiliser Canaille comme serveur d'identité dans l'environnement de développement (attention à installer les bons extras comme oidc, front, sqlite et server). Canaille pourra être lancé en parallèle de Sisyphe grâce à des outils tels que Honcho.
On pourra utiliser pytest-iam pour tester la connexion OIDC dans les tests unitaires.
Bonus
Importer les données de timewarrior
Fournir une fonctionnalité qui permet d'importer les données produites par timewarrior export, dans le style de:
Authentificationto Backlog