Tier Arten #25

Closed
opened 2026-08-15 12:01:22 +02:00 by admin · 1 comment
Owner

Zur Doku

Zur Doku
Author
Owner

Tierarten-Erweiterung - live

Das Species/Breed-System war bereits vollstaendig datengetrieben (i18n-Uebersetzungstabellen, dynamische pets.listSpecies/listBreeds-Abfragen) - Pet-Erstellung, Onboarding, Werbe-Targeting lesen schon alle live aus der DB. Neue Tierarten sind daher reine Seed-Daten, kein Code-Change.

Neu hinzugekommen (16 zusaetzliche Species, jetzt 16 insgesamt):

  • Pferd, Kaninchen, Meerschweinchen, Hamster, Maus, Ratte, Chinchilla
  • Schlange, Echse, Schildkroete, Gecko
  • Spinne
  • Aquarium (Sonderfall: die Pet-Identitaet ist das Becken/Aquarium als Ganzes, nicht ein einzelner Fisch - passt besser zu dem, wie Aquaristik-Fans ihr Hobby zeigen. Rasse = vorherrschend gehaltene Fischart, z. B. Betta, Guppy, Diskus, Koi - gleiches Prinzip wie bei "Vogel", das viele Vogelarten ueber die Rasse abdeckt)

Alle mit Rasselisten + DE-Uebersetzungen befuellt (prisma/seed.ts).

Arachnophobie-Helfer: Da mit Spinnen erstmals eine Tierart dabei ist, die manche Nutzer aktiv meiden wollen, gibt es jetzt eine Owner-Einstellung hideSpiders - einmalig als optionaler (ueberspringbarer) Onboarding-Schritt angeboten, jederzeit unter "Meine Tiere" wieder umschaltbar. Bei aktivierter Einstellung werden Species="Spider"-Pets/Beitraege vollstaendig aus Feed, Explore und Suche ausgeblendet (kein Weichzeichnen - komplettes Ausblenden, da das fuer eine Phobie die verlaesslichere Wahl ist).

Umsetzung:

  • Neues Feld Owner.hideSpiders, Prozeduren owner.getHideSpidersPreference/setHideSpidersPreference
  • Zentraler Helper src/lib/spider-exclusion.ts (gecachter Species-Lookup + Owner-Praeferenz-Check)
  • Exclusion-Filter eingebaut an allen Lesestellen: feed.ts (3 Stellen), explore.ts (listPets, getTrending), search.ts (pets, byHashtag, byOwner)
  • Neue Komponenten ArachnophobiaOptIn.tsx (Onboarding) und HideSpidersToggle.tsx (Profil-Einstellung)
  • 8 neue Tests, Typecheck + Lint sauber, komplette Suite gruen

Deployed und verifiziert (HTTP 200 intern + ueber pawfeed.org). Seed-Daten laufen direkt gegen die produktive DB (lokale + Server-DB sind dieselbe Instanz), Chinchilla/Aquarium sind bereits live selektierbar.

**Tierarten-Erweiterung - live** Das Species/Breed-System war bereits vollstaendig datengetrieben (i18n-Uebersetzungstabellen, dynamische `pets.listSpecies`/`listBreeds`-Abfragen) - Pet-Erstellung, Onboarding, Werbe-Targeting lesen schon alle live aus der DB. Neue Tierarten sind daher reine Seed-Daten, kein Code-Change. **Neu hinzugekommen (16 zusaetzliche Species, jetzt 16 insgesamt):** - Pferd, Kaninchen, Meerschweinchen, Hamster, Maus, Ratte, Chinchilla - Schlange, Echse, Schildkroete, Gecko - Spinne - Aquarium (Sonderfall: die Pet-Identitaet ist das Becken/Aquarium als Ganzes, nicht ein einzelner Fisch - passt besser zu dem, wie Aquaristik-Fans ihr Hobby zeigen. Rasse = vorherrschend gehaltene Fischart, z. B. Betta, Guppy, Diskus, Koi - gleiches Prinzip wie bei "Vogel", das viele Vogelarten ueber die Rasse abdeckt) Alle mit Rasselisten + DE-Uebersetzungen befuellt (`prisma/seed.ts`). **Arachnophobie-Helfer:** Da mit Spinnen erstmals eine Tierart dabei ist, die manche Nutzer aktiv meiden wollen, gibt es jetzt eine Owner-Einstellung `hideSpiders` - einmalig als optionaler (ueberspringbarer) Onboarding-Schritt angeboten, jederzeit unter "Meine Tiere" wieder umschaltbar. Bei aktivierter Einstellung werden Species="Spider"-Pets/Beitraege vollstaendig aus Feed, Explore und Suche ausgeblendet (kein Weichzeichnen - komplettes Ausblenden, da das fuer eine Phobie die verlaesslichere Wahl ist). Umsetzung: - Neues Feld `Owner.hideSpiders`, Prozeduren `owner.getHideSpidersPreference`/`setHideSpidersPreference` - Zentraler Helper `src/lib/spider-exclusion.ts` (gecachter Species-Lookup + Owner-Praeferenz-Check) - Exclusion-Filter eingebaut an allen Lesestellen: `feed.ts` (3 Stellen), `explore.ts` (listPets, getTrending), `search.ts` (pets, byHashtag, byOwner) - Neue Komponenten `ArachnophobiaOptIn.tsx` (Onboarding) und `HideSpidersToggle.tsx` (Profil-Einstellung) - 8 neue Tests, Typecheck + Lint sauber, komplette Suite gruen Deployed und verifiziert (HTTP 200 intern + ueber pawfeed.org). Seed-Daten laufen direkt gegen die produktive DB (lokale + Server-DB sind dieselbe Instanz), Chinchilla/Aquarium sind bereits live selektierbar.
admin closed this issue 2026-08-15 22:04:58 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: admin/petfeed#25