← All work 01 / 08
Next.jsPostgreSQLAI SDKStripe 2026
Verdkan
Spaced Repetition, Rebuilt for AI

01
Overview
Verdkan is a live spaced repetition learning platform built around the SM2 algorithm. It turns source material — PDFs, DOCX files, YouTube videos, web pages and handwritten notes — into review ready flashcards, then schedules them so they return exactly when recall starts to fade. The product combines an AI card generator, a per card AI tutor, AI answer grading, a block notes editor with inline cards, document storage and long term memory analytics.
02
The challenge
- Keeping a proven SM2 scheduler predictable while making the review flow feel modern and fast
- Turning messy source material — scanned PDFs, long videos, unstructured notes — into cards that are actually worth reviewing
- Giving AI enough context to grade answers and tutor well without letting it silently change a learner’s deck
- Storing documents and media securely per user while linking every card back to its source page
- Designing a review queue that balances overdue, new and due cards without overwhelming the learner
03
What shipped
- SM2 spaced repetition with Again / Hard / Good / Easy ratings and a daily review queue
- AI card generation from pasted notes, PDFs, DOCX files, YouTube links and web pages
- AI tutor mode with streaming answers contextual to the card being reviewed
- AI answer grading that suggests a rating after the learner types their recollection
- Block based notes editor with drag to reorder blocks and inline flashcards
- Image and audio attachments on cards for pronunciation, diagrams and screenshots
- Document library with PDF, DOCX, TXT and Markdown support, linked back to generated cards
- Deck analytics for reviews, retention, mastery and weekly progress
- Stripe powered free and paid plans, with account scoped data and R2 document storage
04
Product
The live product is the best walkthrough. Use the link in the sidebar to explore it directly.
05
Stack
- Next.js 16 App Router with React 19, TypeScript and server components
- Tailwind CSS v4 with a custom design system and dark mode
- PostgreSQL on Neon with Drizzle ORM and typed migrations
- Vercel AI SDK with Qwen models via OpenRouter for generation, grading and tutoring
- JWT session auth with jose and bcrypt password hashing
- Stripe for subscription billing and entitlement checks
- Cloudflare R2 with presigned uploads for documents, images and audio
- Tiptap block editor, unpdf for PDF extraction and Recharts for analytics