DEV Community

Kelvin-Air
Kelvin-Air

Posted on

I made a study app that blocks the next topic until you can say it back

I killed the video factory and kept the part of studying that actually hurts

I built Tablet because every “AI study” product I tried did the same thing: turn a lecture into more text I could ignore.

Summaries feel like progress. They are not retrieval. On exam week you still cannot say the claim out loud without looking down.

So Tablet is not a note app with a chatbot glued on. It is a retrieve loop with a binge gate.

The loop

  1. Ingest — paste text, a URL, YouTube, or a PDF. Optional exam date.
  2. Distill — the source is cut to essentials only, then split into short study units. Pedagogy is locked: Claim → Why → Example → Trap.
  3. Practice unlocks immediately — Drill decks + checks as soon as distill persists. You do not wait on a render.
  4. Retrieve — 4-option MCQ (one correct, three plausible traps), type-it, or teach-back.
  5. Retention — same claim, colder prompt. Due times follow the exam window, or ~+2 days if you never set one.

Watch is a three-column study surface: queue, notes (markdown, generate, chat), and the next check. The title sits in the center. Side rails collapse instantly. Leftover MP4s can still play if they exist. That is not the product.

The product is: you cannot skip to the next unit until you retrieve.

Rules I will not soften

  • Binge gate. Next topic stays locked until a check is cleared or teach-back is logged.
  • Units end on an open trap. The punchline is not in the lesson. You earn it in Check or on the orb.
  • Teach-back is graded. Pass / shallow / confident-wrong. Confident-wrong does not clear the gate. That is the hypercorrection rule — being sure and wrong is worse than being unsure.
  • Mid-checks are objective. Exactly four options. No “all of the above.” acceptableAnswer is an exact match.
  • Long sources are split, not stuffed into one infinite chat. Aim ~15h of source; hard ceiling ~25h. Above that we refuse or force a split.
  • Citations from day one. Thin sources get rejected.

If that sounds strict, good. College is already timed. The app should be too.

What I deleted on purpose

I had a vertical Short encode stack. Remotion, kit-fill, SVG boards, ffmpeg compose. It was expensive, slow, and it let me pretend “shipping video” was shipping learning.

Founder overrule: that stack is gone. Practice is the face until a new encode is actually locked. Builders will understand this: the impressive demo was eating the product.

Stack (boring on purpose)

Layer Choice
Client Expo + Expo Router + TypeScript — one codebase for iOS, Android, web
API Express + TypeScript
Data PostgreSQL + Prisma
Files Cloudflare R2
Hosting Render
Distill Claude primary, OpenAI backup
Voice (orb) ElevenLabs when keyed
Billing Stripe

No mystery framework. No “we trained our own video model.” The hard part is the contract: essentials → retrieve → space it toward the exam.

Pricing, because COGS is real

  • Free: 10 lessons / rolling week
  • Pro: $29.99 / month
  • Exam week: $14.99 for 7 days

I raised this on purpose. A mid-length course (~15h source) is not a 9.99 toy once you pay for distill + TTS. Fair use still applies — Pro is not “one 25h dump every billing cycle forever.”

Who it’s for

Undergrads who have a date on the calendar and a pile of PDFs they have highlighted into oblivion.

If you want a second ChatGPT window, this will annoy you. If you want something that makes you say the claim back before it lets you binge the next clip, try it.

Site: mytablet.app

Happy to talk ingest, the binge gate, or why I ripped the encoder out. Roast the loop, not the landing.

Top comments (0)