Skip to main content
  • About
  • Work
  • Blog

© Nubelson Fernandes | 2026

  • Home
  • About
  • Work
  • Blog

All Projects

Purl

🗓️ May 11, 2026

Purl

Live Demo

Source Code

An AI-powered read-it-later app and personal knowledge base — save web pages, PDFs, YouTube videos, and audio, then ask questions and get cited answers from everything you've stored.

Purl

Purl is a full-stack, production-ready personal knowledge base built to solve a common problem: saving content you care about and never being able to find or use it again. Instead of bookmarks, Purl ingests what you save — extracting text, generating vector embeddings, and making it all queryable through an AI chat interface powered by Anthropic Claude.

Save a link or upload a file, and Purl classifies it automatically — web page, PDF, YouTube video, or audio. Each content type goes through its own ingestion pipeline: Readability for web articles, page extraction for PDFs, transcript fetching for YouTube, and Whisper transcription for audio. Chunks are embedded via OpenAI and stored in Postgres with pgvector, ready for semantic search.

The chat layer streams responses from Claude with tool use — it can list your saved items, filter by date or type, and search over your stored chunks. @ mentions let you focus the conversation on specific links, keeping context tight and answers relevant.

Beyond the core product, Purl ships with a full operational layer: Stripe subscriptions with Free and Pro tiers, Better Auth for authentication, Supabase Realtime for cross-device sync, Upstash-backed rate limiting, Sentry error tracking, a PWA manifest with a Serwist service worker for installability, and a CI/CD pipeline on GitHub Actions.

Tech Stack

Next.js, React 19, TypeScript, Tailwind CSS, shadcn/ui, Better Auth, PostgreSQL, Prisma, pgvector, Anthropic Claude, OpenAI (embeddings + Whisper), Vercel AI SDK, Supabase Realtime, Stripe, Upstash, Sentry, Vitest

Meridian