Skip to content

kmskebo/fdojo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

.fdojo — Errate die Silhouette

Ein Coding-Dojo: Du baust ein „Wer ist dieses Pokémon?"-Spiel mit der PokéAPI.

Ziel der Session ist nicht das perfekte Spiel, sondern ein vorführbares Ergebnis am Ende.


Aufgabe

Baue ein Spiel, das

  1. ein zufälliges Pokémon auswählt,
  2. es als Silhouette anzeigt (oder als gleichwertiges Äquivalent — siehe Konsolen-Modus),
  3. den Namen vom Spieler entgegennimmt,
  4. das Pokémon bei korrektem Tipp oder auf Anforderung auflöst.

Wie du das umsetzt, ist deine Sache.


Erlaubter Stack

Wähle einen der folgenden Stacks. Andere Frameworks oder Sprachen sind nicht zugelassen.

Stack Eignung
HTML + CSS (+ Vanilla JS) Schnellster Weg zu einem lauffähigen Ergebnis
Angular Komponenten, Routing, Signals
.NET + WPF Desktop-UI mit nativer Bildverarbeitung
.NET-Konsolenanwendung Reduziert, konzeptionell anspruchsvoller
.NET-Backend (ASP.NET) + eines der obigen Frontends Wenn du eine Proxy- oder Caching-Schicht willst

Nicht zugelassen: React, Vue, Svelte, Blazor, MAUI oder andere UI-Frameworks. CSS-Bibliotheken wie Bootstrap, Tailwind oder Material sind erlaubt.


API

Base-URL: https://pokeapi.co/api/v2/

Keine Authentifizierung nötig, CORS aktiviert.

Einstiegs-Endpoints (vollständige Referenz in den PokéAPI-Docs):

GET /pokemon/{id-or-name}     Stats, Typen, Sprites
GET /pokemon-species/{id}     Pokédex-Text, Generation, Evolution
GET /generation/{id}          Pokémon nach Generation

IDs 1 bis 1025 decken die aktuellen Hauptserien-Pokémon ab.

Sprites

Der Response von /pokemon/{id} enthält ein sprites-Objekt mit mehreren Bild-URLs, z. B.:

sprites.front_default
sprites.other["official-artwork"].front_default
sprites.other.home.front_default

Welche Quelle für dein Spiel passt, ist Teil der Designentscheidung. Eine vollständige Übersicht zeigt der Beispiel-Response für Pikachu.


Konsolen-Modus

Eine Konsolenanwendung kann keine Bilder anzeigen. Wenn du diesen Pfad wählst, musst du den Begriff „Silhouette" fürs Terminal selbst definieren. Diese Definition ist Teil der Aufgabe.


Stolperfallen

Bereiche, in denen erfahrungsgemäss Zeit verloren geht — ohne Lösungen:

  • Einige Pokémon-Namen enthalten ungewöhnliche Zeichen. Direkter String-Vergleich reicht nicht.
  • Nicht jedes Pokémon liefert unter jeder Sprite-URL ein Bild. Einige Felder sind null.
  • Die PokéAPI hat Rate-Limits. Häufige Anfragen während der Entwicklung können sich auswirken.
  • fetch (JS) und HttpClient (.NET) arbeiten asynchron. Den UI-Thread nicht blockieren.

MVP-Kriterien

Du bist fertig, sobald

  • ein zufälliges Pokémon über die API geladen wird,
  • dessen Silhouette (oder das Konsolen-Äquivalent) angezeigt wird,
  • eine Eingabe entgegengenommen wird,
  • der Tipp gegen den tatsächlichen Namen geprüft wird,
  • das Pokémon bei korrektem Tipp aufgelöst wird.

Alles darüber hinaus ist Bonus.


Optionale Erweiterungen

  • Punktestand und Streak-Tracking
  • Timer
  • Schwierigkeitsstufen (z. B. nur Generation 1, alle Generationen)
  • Multiple-Choice-Modus
  • Schrittweise aufgedeckte Hinweise
  • Stat-Anzeige nach Auflösung
  • Zwei-Spieler-Modus
  • Cry-Wiedergabe
  • Auflösungs-Animation

Ressourcen


Dojo-Regeln

  1. Nur ein Stack pro Teilnehmer.
  2. Default-Timebox: 90 Minuten fürs MVP, danach Zeit für Erweiterungen.
  3. Demo am Ende der Session — unabhängig vom Fertigstellungsgrad.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors