GLOTECH
ACCUEILPROJETSCV
ENFR
RETOUR_AUX_PROJETS
SUIVI_DE_TACHES

PROJECTLIST

Un Jira volontairement minimal : des projets, un tableau à trois colonnes, et rien de plus

PROJECTLIST
APERCU_DU_PROJET

PRESENTATION

ProjectList est un gestionnaire de tâches construit sous une contrainte stricte : rester petit. Les tâches se déplacent entre À faire, En cours et Terminé sur un tableau kanban, par glisser-déposer ou par boutons fléchés, parce que les événements de drag HTML5 sont peu fiables sur écran tactile et qu'un tableau inutilisable sur téléphone n'est pas fini. Chaque tâche porte au plus un drapeau — mineur, important ou bloqué — rendu sur le bord gauche de la carte pour que le tableau se lise d'un coup d'œil. Le travail terminé est archivé hors du tableau en un clic et conservé sur une page d'historique séparée avec filtres, recherche et restauration. Deux choix de conception s'écartent délibérément du projet voisin : les tâches sont identifiées par l'ObjectId natif de MongoDB plutôt que par un compteur fait main, ce qui évite une course entre lecture et écriture à l'insertion, et les mises à jour passent par PATCH avec des vérifications explicites de undefined plutôt que par un remplacement de document — parce que remplacer un document face à un booléen non nullable est exactement la façon dont on écrit une perte de données silencieuse.

STACK_TECHNIQUE

Angular 19TypeScript 5.7Express 5Mongoose 8MongoDB AtlasNode.js 20PM2NginxLet's Encrypt

FONCTIONNALITES_CLES

[01]
Tableau kanban à trois colonnes avec glisser-déposer et boutons fléchés en secours, qui reste utilisable sur écran tactile
[02]
Drapeaux par tâche (mineur, important, bloqué) affichés comme bord coloré de la carte et comme badge
[03]
Projets traités comme des enregistrements à part entière : un projet vide peut exister avant d'avoir la moindre tâche
[04]
Archivage groupé en un clic de la colonne Terminé, qui écarte le travail fini sans le supprimer
[05]
Page d'historique séparée couvrant toutes les tâches jamais créées, avec filtres, recherche, restauration et suppression définitive
[06]
État du tableau conservé dans les paramètres d'URL : une vue filtrée est partageable et survit à un rafraîchissement
[07]
Mises à jour optimistes qui reviennent en arrière et affichent une erreur en ligne lorsqu'une requête échoue
[08]
Confirmation en deux étapes avant toute action destructrice, indiquant combien de tâches la suppression d'un projet emporterait
[09]
Script de migration de schéma convertissant le booléen d'origine en statut à trois états, idempotent et doté d'un mode dry-run
[10]
25 tests unitaires couvrant les transitions de statut, les retours en arrière optimistes, les drapeaux, le glisser-déposer et le flux d'archivage

METRIQUES

25 au vert
Tests unitaires
projects + tasks
Collections
loopback uniquement
Écoute