Kata APOD
À propos
ⓘ Ce dépôt contient un kata, c'est à dire un exercice de programmation
généralement utilisé dans le cadre d'un coding dojo. Il est proposé aux
membres du dojo de l'EPFL et fait partie d'une collection de différents
katas identifiés par le topic epfl-dojo-kata sur GitHub.Comment participer ?
- Réalisez le kata dans le langage de programmation de votre choix.
- Ajoutez-vous à la liste des participants en proposant une pull request.
- Partagez votre intérêt pour ce dépôten lui ajoutant une ⭐.
- Proposez des suggestions ou signalez des bugs en ouvrant une issue.
Bonne lecture et bon code !
But
Le but de ce kata est d'exercer le HTML / CSS / JS en créant un "browser" de
la photo d'astronomie du jour, fournie par la NASA, connue sous l'acronyme
APOD ("Astronomy Picture of the Day"). Il s'agit de proposer une version
alternative de https://apod.nasa.gov/apod/astropix.html.
À disposition
La NASA fournit des APIs, disponibles sur https://api.nasa.gov/. Des
informations sur l'API APOD sont disponibles sur cette même page tout comme
sur le dépôt GitHub https://github.com/nasa/apod-api. En JavaScript,
il est facile de récupérer des informations d'une API en utilisant
fetch, mais ce
n'est qu'un moyen parmis beaucoup d'autres.
Réalisation
- L'application peut être auto-contenue dans un fichier HTML ou séparées en
plusieurs fichiers (par exemple pour le CSS ou le JavaScript). - Le code de l'application doit se trouver sur un repo Git accessible
publiquement, car l'exercice porte aussi sur la qualité des messages de commits
(et le suivi de l'évolution du code de l'application à travers ces derniers). - La proposition de mise en page (ci-dessous) est une suggestion permettant de
mettre en avant les fonctionnalités attendues. L'esthétisme n'est pas un
critère, mais ne fait pas de mal... - Il n'y a pas de contrainte sur les outils, mais l'utilisation de
fetch
est suggérée. Ce kata peut aussi être un bon prétexte pour apprendre
jQuery ou un framework tel que vue
ou react. - On peut commencer à partir de ce dépôt, en le
forkant
dans son propre compte.
Proposition de mise en page
Fonctionnalités attendues / checklist
- La page a un titre
- La page a un pied de page, avec au moins un lien vers le dépôt de code
- Le titre de l'APOD est présent
- La date de l'APOD est présente
- La description de l'APOD est présente
- Le copyright de l'APOD est présent (info)
- Le média est affiché. Il peut s'agir :
- D'une image, qui offrira un lien vers sa version HD
- D'une vidéo, qui offrira un player pour la visionner
- Des boutons suivant et précédent sont présents
- Le bouton précédent est un lien vers l'image du jour précédent
- Le bouton suivant est un lien vers l'image du lendemain, mais n'est pas
cliquable si l'APOD est celui d'aujourd'hui
- Les balises meta
(notammentdescription,authoretkeywords) sont renseignées dans le
<head>de la page HTML - Le titre de la page (
<title>) affiche un texte avec la date (par exemple
"Kata APOD 2024-09-10")
Bonus
- L'application est disponible en ligne, par exemple sur
GitHub pages - Il est possible de copier l'URL d'un APOD (avec la date d'un jour
spécifique) pour la partager - Il est possible d'accéder à l'APOD d'une date précise en la spécifiant
dans l'URL (par exemple?date=2024-09-10) - L'application offre la possibilité de gérer la clé d'API
(l'utilisateur peut mettre sa propre clé plutôt que DEMO_KEY)
Et pour finir
- Une fois terminé, ajouter les liens vers votre code et/ou votre page avec
ci-dessous
