Back to case studies
2025-2026Solo

nnzen model catalog

A live LLM catalog that collects model data, normalizes it, and makes model comparison faster.

Catalog
500+ model records
Data flow
Normalized ingest
Surface
Live product
Decision surface

The backend keeps model data in one comparable shape.

The goal is to reduce manual research, not to make another static list.

1OpenRouter catalog ingest -> normalized model cards
2Search and filters over model metadata
3Comparison context on top of raw records
Role

Founder / Backend Developer

Stack
PythonFastAPILLM APIsRAGVector DB / pgvector
Problem

Model data was scattered across sources, so pricing, context size, limits, and quality signals had to be checked by hand.

Solution

Built a FastAPI backend for OpenRouter ingest, normalized model cards, ranking context, and search/filters over one consistent shape.

Impact

Model research moved from tabs and notes into one searchable comparison surface.

What I did
  • Built ingestion and normalization for model catalog data.
  • Exposed search, filters, and comparison context for faster model selection.
  • Kept the backend extensible for new model sources and ranking signals.
What it shows
  • Good data tools need boring normalization before they need a fancy UI.
  • Decision speed matters more than showing every possible detail at once.
Related work

More projects

2025

MCP core for an LLM assistant

Solo

Backend core for an LLM assistant with plugin execution, hot reload, tool chains, and explicit context handoff.

PythonFastAPIMCPTool callingLLM APIs
2024-2025

FastAPI backend performance cleanup

Solo / contract-style work

Optimization of a FastAPI API path: async I/O, connection reuse, Redis cache, request validation, metrics, and removal of serial bottlenecks.

PythonFastAPIasyncioPydanticRedis