Back to projects

Kelbrum

A content-based anime recommendation system that combines structured metadata, semantic embeddings, taxonomy alignment, and relationship-aware processing to generate similarity-based recommendations.

Technologies Used

PythonPolarsNumPySciPyscikit-learnsentence-transformersTypeScriptReactTanStack StartFlexSearchTailwindCSSshadcn/ui

Timeline

Feb 2024 - Sept 2026

Co-Authors

This project was completed individually

Key Accomplishments

  • Engineered a multi-path recommendation system that retrieves candidates through feature similarity, taxonomy alignment, and MiniLM semantic embeddings, then applies relationship-aware filtering, scoring, and deduplication to produce top 100 recommendations.
  • Built an end-to-end Python data pipeline with Polars, NumPy, SciPy, scikit-learn, sentence-transformers, and msgspec to acquire, normalize, enrich, and transform anime metadata into recommendation-ready features.
  • Designed a deterministic relationship graph that collapses sequels, prequels, and summaries into same-story families while preserving remakes, spin-offs, side stories, and broader franchise relationships.
  • Curated version-controlled metadata corrections and a dedicated tag taxonomy to capture narrative characteristics and relationships missing from source anime metadata.
  • Precomputed ranked recommendations, catalogue data, and search indexes into validated static frontend artifacts, eliminating runtime recommendation computation and enabling fast client-side browsing and filtering.
  • Developed a responsive TanStack Start and TypeScript frontend with FlexSearch and multi-dimensional filtering across media type, content rating, demographic, genres, themes, score, year, and episode count.
  • Leveraged spec-driven development with OpenSpec to architect Kelbrum's major v2 refactor, new features, and page redesigns, translating architectural and product changes into explicit requirements, acceptance criteria, implementation tasks, and validation steps.