Un site Web développé pour le « Challenge 2 - Presenting Data, frontend-focused » par l'Université de Falmouth. Ce site Web présente aux utilisateurs une interface plus conviviale pour consulter les statistiques météorologiques à partir des API http://api.spitcast.com/.
Défi 2 – Présentation des données, axée sur le frontend
Détails du défi : créez un site Web qui utilise l'API et présente les informations à vos clients de manière efficace, accrocheuse et bien conçue. Prenez les retours JSON de cette API et affichez-les sur un site Web agréable. Utilisez tous les frameworks que vous souhaitez pour que cela fonctionne efficacement. Une liste de spots particuliers peut être trouvée au format JSON ici (extraite de http://api.spitcast.com/api/spot/all) – ils sont basés aux États-Unis. Les user stories particulières auxquelles vous devez répondre sont (par ordre d’importance) :
• En tant que surfeur, je m'attends à pouvoir définir mon niveau d'expertise sur Novice, Intermédiaire ou Expert. • En tant que surfeur novice, je m'attends à ce que la qualité d'un spot augmente avec des vents plus forts jusqu'à 15 nœuds, puis diminue jusqu'à 20 nœuds, après quoi la qualité doit être la même que celle d'une journée calme. • En tant que surfeur intermédiaire, je m'attends à ce que la qualité du spot augmente avec des vitesses plus élevées jusqu'à 20 nœuds, puis diminue jusqu'à 25 pieds, après quoi la qualité devrait être la même que celle d'une journée calme. • En tant que surfeur expert, je m'attends à ce que la qualité du spot augmente toujours avec des vents plus forts. • En tant que surfeur, j'ai besoin de voir le meilleur spot pour surfer aujourd'hui. • En tant que surfeur, je peux sélectionner ma position actuelle et trouver le spot le plus proche par distance dans les 25 % des meilleurs spots (calculer en utilisant les distances du grand orthodromique). • En tant que surfeur, je peux sélectionner ma position actuelle et trouver le meilleur spot dans une distance spécifiée. • En tant que Surfeur, ma position actuelle peut être déterminée automatiquement (à l'aide de l'API de géolocalisation HTML5 par exemple). • En tant que surfeur, je peux sélectionner ma position actuelle et trouver le spot le plus proche en fonction du temps de trajet dans les 25 % des meilleurs spots (je peux utiliser l'API Google Directions ou l'API Google Distance Matrix pour cela). • En tant que surfeur, je peux sélectionner ma position actuelle et trouver le meilleur endroit dans un temps de conduite spécifié. Format de soumission Veuillez fournir : • Un package entièrement prêt à être construit, hébergé sur un référentiel privé BitBucket, GitLab ou GitHub, partagé avec [email protected]. • En option : une instance en direct de votre défi terminé s'il est hébergé sur le Web, un exécutable Windows s'il s'agit d'une version de bureau ou un APK s'il s'agit d'une version d'application Android. • Le temps nécessaire pour relever le défi. Critères d'évaluation Les paramètres d'évaluation de ce test sont les suivants : 1. Fonctionnalité de travail. 2. Qualité de l'expérience utilisateur (la fourniture d'une instance en direct y contribue). 3. Niveau de conformité aux principes SOLID. 4. Vous ne serez pas particulièrement évalué lors des tests automatisés.
Créé grâce à l'utilisation de l'API météo http://api.spitcast.com/ | Excellente API pour des informations météorologiques librement disponibles, mais elle est basée aux États-Unis et n'est donc pas très pertinente pour nous (basée au Royaume-Uni).
Modèle d'amorçage modifié 'SB Admin 2' : https://startbootstrap.com/themes/sb-admin-2/ | Disposition la plus appropriée et prend en charge plusieurs appareils.
Actuellement en développement* En raison de contraintes de temps, certaines fonctionnalités n'ont pas pu être terminées et les commentaires ne sont pas aussi récents que je le souhaiterais, mais le site Web est fonctionnel*. Spots près de chez moi actuellement en état de « travail en cours ». Reprendre le développement après le retour des résultats. Commentaires pour le code. Correction d'une structuration étrange (indentation) du code provoquée lors du transfert vers github depuis notepad++