AI / Full Stack
Inferr
- Built a full-stack AI developer news platform in a pnpm + Turborepo monorepo (Next.js 15 frontend + NestJS 11 API) with Drizzle ORM, deployed on Vercel (web) and Render (API) backed by Neon PostgreSQL + pgvector.
- Engineered a 10-source daily ingestion pipeline (Hacker News, Dev.to, Reddit /r/programming & /r/webdev, Lobste.rs, Hashnode, Medium, TechCrunch, GitHub, HackerNoon) driven by user interest tags: parallel metadata fetch → concurrent Cheerio content scraping (batches of 5, 8k char cap) → gpt-4o-mini summarization + text-embedding-3-small embeddings. Idempotent via URL deduplication, 24h freshness filter, and tag-aware balancing.
- Designed a production-grade personalized feed using cached per-user query embeddings: pgvector cosine ANN + dynamic tag-overlap bonus (+0.15 per match, max +0.3), strict relevance threshold (distance < 0.5), 1-day recency, and source-diversity selection logic that returns the highest-ranked article per source before filling remaining slots (top 5-6).
- Implemented a LangGraph agentic RAG pipeline (retrieve → grade → rewrite → generate) accepting multi-turn history. Uses k=6 retrieval, structured LLM grader (Zod), query rewriting up to 2 iterations when no documents pass grading, and strict separation of originalQuestion vs. searchQuery. Integrated Langfuse tracing + fire-and-forget faithfulness/relevance/recall evaluations persisted to ai_evaluations.
Next.js 15NestJS 11TypeScriptDrizzle ORMpgvectorLangGraphOpenAIMCP SDKOAuth 2.1LangfuseKubernetes