# Hiki: Manga-Preistracker und Entdeckungsplattform

> Eine Plattform zum Entdecken von Manga und zum Preisvergleich für Web und Android, die Produkte aus mehreren Buchhandlungen bündelt, mit Metadaten-Anreicherung aus vier Anime-Datenbanken, täglicher Preis- und Bestandsverfolgung, einem Second-Hand-Marktplatz, einer Ladenkarte und mehrsprachiger Oberfläche.

URL: https://larch.ee/de/work/hiki/
Veröffentlicht: 2025-04-01
Live-Produkt: https://hiki.world
Studio: larch (https://larch.ee/de/) · hello@larch.ee

## Das Problem

Manga-Fans haben keinen einfachen Weg herauszufinden, was in den Buchhandlungen vor Ort erhältlich ist. Die Produkte sind über viele Händler verstreut, mit uneinheitlichen Namen, ohne Genrefilter und ohne Möglichkeit, Preise zu vergleichen oder Bestandsänderungen zu verfolgen.

## Unsere Lösung

Wir haben Hiki als Full-Stack-Mangakatalog mit Preistracker gebaut. Er bündelt Produkte aus mehreren Buchhandlungen, reichert sie mit Metadaten aus Anime-Datenbanken an und präsentiert alles in einer schnellen, filterbaren, mehrsprachigen Oberfläche, im Web und in einer nativen Android-App.

## Kernfunktionen

### Intelligente Produktaggregation

Automatisierte Scraper laufen täglich und erfassen Produktdaten aus mehreren Buchhandlungen: Namen, Preise, Rabatte, Bestandsstatus und Bilder. Die Änderungserkennung markiert Neuheiten, Preissenkungen und Bestandsänderungen, sodass Nutzer kein Update verpassen.

### Metadaten-Anreicherung

Rohe Produktnamen aus Buchhandlungen sind oft verrauscht und uneinheitlich. Unsere Anreicherungs-Pipeline orchestriert mehrere APIs, um sie aufzulösen:

- **AniList**: Hauptquelle für Bewertungen, Genres, Tags, Inhaltsangabe und Coverbilder
- **Shikimori**: Titelübersetzung für kyrillische Produktnamen
- **Jikan & Kitsu**: Fallback-Quellen für Metadaten in Sonderfällen

Das System erzeugt intelligente Titelvarianten, verarbeitet kyrillische wie lateinische Schrift und löst selbst die verstümmeltsten Produktnamen zu ihren kanonischen Manga-Einträgen auf.

### Erweiterte Filter

Nutzer können nach 21 Manga-Genres, 100+ Tags, Preisspanne, Rabattstatus, Verfügbarkeit und Herkunftsladen filtern. Die Volltextsuche durchsucht Produktnamen in allen unterstützten Sprachen.

### Mehrsprachige Oberfläche

Die gesamte Plattform unterstützt mehrere Sprachen (einschließlich Genrenamen, Tag-Übersetzungen und UI-Elementen), gebaut mit next-intl und sprachabhängigem Routing.

### Marktplatz

Nutzer inserieren gebrauchte Manga, Anime-Figuren, Kleidung und Vinyl, im Web und in der Android-App. Ein Inserat hat einen Preis in Lei (MDL), den Zustand, die Sprache der Ausgabe, die Stadt des Verkäufers in Moldau und ein bis fünf Fotos.

Ein Admin prüft jedes Inserat, bevor es online geht, und jede Änderung schickt es zurück in die Prüfung. Ein freigegebenes Inserat bleibt 30 Tage online, läuft dann ab und kann verlängert werden. Käufer kontaktieren Verkäufer über Telegram und können ein Inserat melden; Zahlungen wickelt Hiki nicht ab.

### Ladenkarte

Leser suchen eine bestimmte Ausgabe (nach Titel, Band oder ISBN) und wählen eine Stadt. Die Karte zeigt die Läden von Librarius und Cărturești in Moldau, die sie führen, mit Preis und Bestand, Adresse und Telefonnummer sowie Öffnungszeiten. Ein Filter „Jetzt geöffnet“, die Sortierung nach Entfernung und eine Wegbeschreibung helfen bei der Wahl eines Ladens.

Die Ladendaten stammen von den Filialseiten der Händler selbst und werden jede Nacht synchronisiert. Die Karte läuft auf Google Maps, im Web und unter Android.

## Technische Highlights

### Frontend
- **Next.js 15** mit React 19 und App Router
- **Neubrutalism-Designsystem**: kräftige Rahmen mit 2 px, versetzte Schatten, ein von Manga inspirierter Look mit den Schriften Lacquer und Pangolin
- **next-intl** für vollständige i18n mit sprachabhängigem Routing
- **shadcn/ui**-Komponenten, angepasst an das Neubrutalism-Theme

### Android-App
- Native **Kotlin**-App, gebaut mit **Jetpack Compose** und Material 3, live bei [Google Play](https://play.google.com/store/apps/details?id=world.hiki)
- Dasselbe **FastAPI**-Backend und dasselbe **Firebase**-Projekt wie die Web-App: Google Sign-In mit Firebase Auth, Push-Benachrichtigungen mit Firebase Cloud Messaging
- **Hilt**, **Retrofit**, **Room** und **Coil**, mit **Maps Compose** für die Ladenkarte
- Der Katalog mit Suche, Filtern und Sortierung, Produkt- und Autorenseiten, Shuffle, Listen mit Reaktionen, der Marktplatz, die Ladenkarte, Gewinnspiele und ein Profil
- Eine iOS-App in **SwiftUI** ist in Arbeit

### Backend
- **FastAPI** (Python) mit asynchronem MongoDB über Motor
- **aiohttp**-Scraper mit Rate Limiting und exponentiellem Backoff
- **Multi-API-Anreicherungs-Orchestrator**, der Titel über 4 Anime-Datenbanken auflöst
- **Google Cloud Scheduler** für automatisierte tägliche Scrapes
- **Cloud Armor** mit Geo-Beschränkungen und Allowlists für Crawler

### Infrastruktur
- Frontend und Backend laufen beide auf **Google Cloud Run**
- **MongoDB** für flexible Dokumentenspeicherung mit zusammengesetzten Indizes
- **Cloud Build** für CD bei jedem Push auf main

## Ergebnisse

Hiki gibt Manga-Fans einen zentralen Ort, um jeden vor Ort erhältlichen Manga-Titel zu entdecken, zu vergleichen und zu verfolgen. Die Plattform verarbeitet Hunderte Produkte und verfolgt jeden Tag ihre Preise und ihren Bestand.
