Introduktion:
Der findes et hav af gratis API’er med spændende data! I denne opgave skal I vælge en API, som I finder interessant, og bruge den til at bygge et simpelt projekt. Det kan være en quiz, et lille spil, en datavisualisering eller noget helt andet – det er kun fantasien, der sætter grænser! Målet er at forstå, hvordan man henter og bruger data fra et API samt at vise det på en kreativ og brugervenlig måde.
Opgavebeskrivelse:
-
Find en API:
Brug et af de mange gratis API’er, der er tilgængelige online. Her er nogle eksempler:
- Mercantec-Opgaver-API: Her har vi samlet en masse data, som I frit kan bruge gennem vores API - I kan finde Swagger her: https://opgaver.mercantec.tech/swagger/index.html og se eksempler på hvordan det er implementere her: https://blazor.mercantec.tech/Opgaver
- OpenWeatherMap: Hent vejrdata.
- PokeAPI: Få data om Pokémon.
- Trivia API: Få quizspørgsmål.
- NASA API: Udforsk billeder og data fra rummet.
- OpenLibrary API: Find bøger og forfattere.
Lav research og vælg et API, der fanger jeres interesse. Vi har lavet en samling af gratis og åbne API’er som vi anbefaler I vælger ud fra: POSTMAN LINK
-
Planlæg jeres projekt:
Overvej:
- Hvad vil I bygge? (Quiz, spil, dashboard, visualisering, mv.)
- Hvordan skal data fra API'et bruges i projektet?
- Hvordan vil I præsentere det for brugeren?
-
Byg projektet:
- Opret en ny Blazor applikation
- Hent data fra API’et med en HTTP-request (f.eks. GET).
- Brug dataen i jeres applikation.
-
Præsentér jeres løsning:
- Sørg for, at jeres projekt er funktionelt og visuelt brugbart.
- Indsæt jeres egne forbedringer eller kreativitet for at gøre projektet unikt.
- Forbered en kort præsentation af, hvordan I fandt API’et, hvordan I brugte det, og hvad I lærte.
Krav til løsningen:
- I skal lave mindst én HTTP-request og håndtere dataen i jeres kode (JSON eller andet format).
- Projektet skal have en UI som passer til jeres case og den API I kalder!
- Dokumentér jeres kode med kommentarer, der forklarer, hvordan API’et integreres og bruges.
- Upload koden til GitHub (gennem GitHub Classroom) og sørg for, at README.md indeholder en kort beskrivelse af projektet og API’et.
Ekstra udfordringer for de modige:
- Tilføj søgefunktionalitet, så brugeren kan vælge, hvilke data der skal hentes.
- Implementér et caching-system for at minimere API-opkald.
- Kombinér data fra flere API’er i samme projekt.
Formål med opgaven:
- Lære at finde, forstå og bruge API’er.
- Få erfaring med at arbejde med JSON-data og HTTP-requests.
- Udvikle kreative projekter med fokus på brug af eksterne datakilder.
- Arbejde med struktureret kode og dokumentation.
Afleveringsform
Fremlæggelse for klassen
Live‑fremlæggelse er den korte, direkte præsentation foran klassen, hvor I på 5–7 minutter hurtigt fortæller om jeres API‑valg, viser et par nøgle‑kald i koden og smider en lækker demo. Resten af klassen har mulighed for sammen med underviseren af stille 2-3 spørgsmål efter fremlæggelsen!
Videoaflevering som gruppe (7 minutter samlet)
Videoaflevering er jeres mulighed for at polere historien: I planlægger et lille manus, optager intro, teknik‑forklaring og demo med voice‑over. Den skal vare højest 7 minutter samlet og uploades gennem teams, hvor I i løbet af den efterfølgende uge for respons!
<aside>
🚫
Aflevering som tager længere end 7 minutter, bliver der kun set de første 7 minutter!
</aside>