Les Tickets
Liste des tickets
Afin de vous aider dans la réalisation de ce projet, nous définissons ci-dessous la liste des tâches que vous devez réaliser. Certaines d’entre elles sont obligatoires (en bleu), d’autres optionnelles (en gris). Elles sont numérotées, pour nous aider dans la notation.
De nombreuses tâches peuvent être réalisées en parallèle. Pensez à bien vous répartir le travail.
Le niveau de difficulté de chaque tâche de la partie backend est affiché.
C’est parti
Description
Que dois-je faire :
- Trouver un nom d’équipe et le déposer accompagné du nom de chaque étudiant qui la compose au format texte sur le cours moodle Marathon du web, dans la section nom d’équipe.
- Pour les étudiants MMI, vous devez vous inscrire au cours (clé : marathon2025)
Description
Que dois-je faire :
- Vous avez le choix entre deux styles musicaux. Vous devez faire votre choix rapidement, le style de votre application en dépendra surement.
- Nous passerons vous voir pour connaître votre choix.
Description
Que dois-je faire :
- Un responsable Info a été désigné comme validateur git. C’est lui qui est en charge de forker le projet initial.
- Il invite les différents membres de l’équipe comme développeur sur son projet
- Il invite les professeurs info (M. Tabary, M. Dubois, M. Audemard, M. Hsu, M. Hemery, M. Wallon) comme reporters.
- Il doit initialiser le projet pour que celui-ci puisse fonctionner sur la machine marathon.
- Une fois cela fait, les membres du groupe peuvent maintenant cloner le projet et l’initialiser.
Description
L’url de base de votre projet est inhabituelle. Il n’est pas rare d’avoir des soucis de liens en utilisant cette dernière. Le but de ce ticket est de savoir dès à présent les bonnes pratiques à utiliser pour créer les liens pour les routes et les images.
Que dois-je faire :
- Ajouter votre logo dans le template général de votre site ou un logo disponible (dans
resources/images/logo.jpg). Il faut utiliser vite pour l’afficher<img src="{{Vite::asset('resources/images/logo.jpg')}}" alt="logo"> - Vérifier qu’il s’affiche bien dans le template général.
- Mettre le bon lien sur la page contact (menu du template général) et vérifier que la page est bien affichée quand on suit le lien. Pensez à utiliser les routes nommées pour cela.
- Modifier la couleur de fond de votre application (fichier
resources/css/app.css) - pusher et vérifier que tout fonctionne correctement sur le site du marathon (images, styles, liens).
Rappel : les liens vers les routes doivent passer par les routes nommées. Les liens vers les images doivent utiliser Vite::asset. Les images statiques du projet doivent résider dans le répertoire resources/images.
Backend
Visite
Description
- Qui suis-je : Un visiteur quelconque
- Où suis-je : Page d’accueil du site
- Que dois-je faire :
- Donner la possibilité au visiteur de se connecter (c’est déjà dans le template ;)
- Donner la possibilité au visiteur de s’enregistrer (idem ;)
- Afficher des articles (tous, quelques-uns, des articles aléatoires à vous de voir). On doit pouvoir cliquer dessus pour en voir les détails.
Attention Le ticket 26 est également associé à la page d’accueil. Le ticket 26 doit être réalisé avant mercredi 16h !
Description
- Qui suis-je : Un visiteur quelconque
- Où suis-je : Un article
- Que dois-je faire :
- Afficher les détails de ce dernièr (résumé, auteur, photo, media, caractéristiques (rythme and co), commentaires, likes…)
Description
- Qui suis-je : Un visiteur quelconque
- Où suis-je : Un article
- Que dois-je faire :
- Incrémenter le nombre de vues de l’articles quand on arrive dessus.
- Ajouter cette statistique dans la page de l’article.
Description
Qui suis-je : Un visiteur quelconque
Où suis-je : Page d’accueil du site
Que dois-je faire :
- Il doit être possible de cliquer sur une caractéristique (rythme and co) et de visualiser les articles associés.
- Cela peut être fait depuis la page d’un article, ou depuis la page d’accueil par exemple.
Description
Qui suis-je : Un visiteur quelconque
Où suis-je : Page d’un utilisateur
Que dois-je faire :
-
Afficher les articles qu’il aime.
-
Afficher les rythmes et ambiances qu’il préfère.
-
Afficher combien il a de followers et combien il suit de personnes
-
Permettre de le suivre (Pour un visiteur connecté).
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Page personnelle
Que dois-je faire :
- Afficher mes articles en cours de rédaction.
- …
Voir la page personnelle dans le cahier des charges pour plus de détails.
Description
Qui suis-je : Un visiteur quelconque
Où suis-je : Page d’accueil et page des articles par caractéristique
Que dois-je faire :
- N’afficher que les articles actifs (et ceux qui appartiennent à un utilisateur s’il est connecté)
Gestion d’un article
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Un formulaire
Que dois-je faire :
- Afficher le formulaire pour pouvoir entrer les données relatives à un article
- Traiter ce formulaire et insérer l’article dans la BD
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Dans la page permettant de modifier un article
Que dois-je faire :
- Permettre de modifier l’article et ses médias (image, son).
- Permettre d’activer l’article (voir ci-dessous)
Description
Qui suis-je : Un visiteur connecté
Où suis-je : La page d’un article en cours de création
Que dois-je faire :
- Une fois l’article entièrement créé, il faut pouvoir activer ce dernier
Voir l’activation dans les fonctionnalités pour plus de détails.
Description
Qui suis-je : Un visiteur connecté
Où suis-je : La page d’un article en cours de création et la page d’affichage d’un article
Que dois-je faire :
- Utiliser le format markdown pour formater le contenu de l’article. Ce package peut être utile.
Interaction de l’utilisateur avec le site
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Dans un article
Que dois-je faire :
- Donner la possibilité d’aimer l’article ou de ne pas aimer l’article
- Donner la possibilité de changer cela au cours du temps
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Dans un article
Que dois-je faire :
- Créer le formulaire permettant de commenter l’article
- Traiter ce formulaire
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Dans la page d’un utilisateur
Que dois-je faire :
- Ajouter un bouton permettant de suivre (ou d’arrêter de suivre) l’utilisateur
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Dans sa page personnelle
Que dois-je faire :
- Proposer des personnes aux profils similaires. Pour cela, il faut trouver des personnes qui vous ressemblent. Donc, des personnes qui aiment les mêmes rythmes que vous ou les mêmes conclusions…
- Commencer par faire simple : Vous choisissez une caractéristique. Vous trouvez celle qui apparait le plus dans vos articles. Vous cherchez les utilisateurs avec les mêmes données.
- Vous pouvez ensuite imaginer un algorithme de type k-clustering qui combine l’ensemble des caractéristiques !
Description
Qui suis-je : Un visiteur connecté
Où suis-je : Dans sa page personnelle
Que dois-je faire :
- Afficher les nouveaux articles des personnes que vous suivez. Pour cela il faut utiliser les notifications laravel,
et plus précisément, les notifications basées sur les bases de données. Il faut penser (en local) à lancer un
php artisan queue:workpour que les notifications puissent effectivement être lancées.
Utilisation des composants
Ces tickets sont considérés comme optionnels, mais chaque composant aura l’intérêt de faciliter la répartition du travail dans l’équipe et permettra de le réutiliser indépendamment de la page qui le contient.
Description
- Qui suis-je : Un visiteur quelconque
- Où suis-je : Dans une page quelconque
- Que dois-je faire :
Proposer au moins 2 composants réutilisables pour votre application dans la liste qui suit :
- Créer un composant
card-article - Créer un composant
avis - Créer un composant
like-button - Créer un composant
follow-button - Créer un composant
stat-badge(pour les statistiques : nombre de followers, nombre d’articles…) - Créer un composant
characteristic-badge(pour les caractéristiques : rythme, accessibilité, conclusion) - etc.
Contenu
Ces missions sont entièrement décrites ici
Description
Que dois-je faire :
- Créer deux articles (aller voir dans la partie “communication”)
- Créer un pdf pour que la correction soit possible pour M. Viseur et Mme Membré !
Description
Que dois-je faire :
- Créer la vidéo (Aller voir dans la partie “communication”)
- Permettre sa visualisation dans le site
Design et intégration
L’intégration (ticket 26) prend VRAIMENT (VRAIMENT) BEAUCOUP DE TEMPS.
- Il vous faut absolument l’attaquer avant 15h le mercredi.
- Plus vous tardez à démarrer cette intégration, plus ce sera difficile à terminer.
- N’attendez pas que le logo et les maquettes soient parfaits avant de commencer).
- Le ticket 26 est là pour vous aider à réussir à finaliser cette intégration avec une deadline fixée à 16h !
Description
- Que dois-je faire :
- Créer le moodboard associé à votre charte graphique, voir la page Design
Description
- Que dois-je faire :
- Créer le logo de votre application
Description
- Que dois-je faire :
- Avoir une ébauche de la page d’accueil en ligne sur la machine du marathon avant mercredi 16h.
- Le header et le footer.
- Le logo (même si il n’est pas finalisé…)
- Quelques articles articles mis en avant et stylisés.
Attention : Nous vérifierons que cela est effectivement en ligne sur la machine du marathon mercredi. Cela sera pris en compte dans la notation.
Description
- Que dois-je faire :
- Intégrer votre maquette au site (blade et css sont mes amis)
Description
- Que dois-je faire :
- Valider le HTML/CSS de la page principale sur le site de W3C. Vous ferez une copie d’écran du rendu W3C pour le code HTML et pour le code CSS.
- Déposer les documents produits en précisant le numéro de votre équipe sur le cours moodle Marathon du web, dans la section rendu W3C.
Description
Que dois-je faire :
- Rendre le site responsive
Description
Que dois-je faire :
- Personnaliser la page 404 (vous devez créer dans le répertoire des vues le fichier
/errors/404.blade.phpet le modifier)
Description
Que dois-je faire :
- Personnaliser le lecteur audio.
Description
Que dois-je faire :
- Concevoir un document numérique qui présente vos réalisations et l’équipe
- Une photo de l’équipe
- Le nom de l’équipe et des membres
- Logo et quelques captures d’écrans
Ce document pourra être utilisé pour faire la promotion de notre formation lors de la JPO, …
Rendus
Description
Un ticket à ne pas négliger…. Tout est décrit sur cette page.