Learning and careers decision

Onigiri Anki

A capable developer can reproduce the core AI-powered SRS flashcard features (cards, AI generation, scheduler, storage) using existing open-source prior art, but the paid product's added value—live native lessons and community—would not be replaced by a small self-hosted project.

Visit website
You pay

$14.9/mo

$179/yr

Read off the official pricing page.

You’d pay instead

$100one-off90 h to build

$20/mo3 h/mo upkeep

On cash alone, building overtakes the subscription at 2 seats.

No open-source build does this yet

Nothing published replaces this one, so a replacement starts from an empty file. Here is what it would have to cover.

What a replacement has to do

  • User creates/inputs words or sentences → AI generates Japanese translation, furigana, example sentence and pronunciation → store card in DB with SRS schedule → user reviews due cards and records accuracy → SRS updates schedule

What it still won’t have

  • Access to native monthly 1-on-1 lessons and teacher feedback
  • Access to the vendor's Slack community and any community support
  • Polish and UX conveniences of the hosted product (onboarding, payments, analytics)

What remains hard

  • Product polish and ongoing maintenance
Read the build prompt

First-year cost

Keep paying

Paying is—cheaper in year one.

On cash alone, building overtakes the subscription at 2 seats.

Paid seatsseats

Money you would actually spend

Keep paying
—

Subscription price × seats × 12

Build it
—

AI build —APIs + hosting —

Time you would spend

—

—

What you would spend

What we assumed

The verdict above measures whether you could build it. This one is only about money.

Runnable build prompt

Not run yet
Build a self-hosted web app (Next.js + TypeScript frontend, Node.js API, PostgreSQL database, hosted on Vercel/Render and Supabase or Railway for Postgres) that provides AI-assisted Japanese flashcards. Core features in scope: user signup/login and subscription flag; card creation UI that sends English input to an LLM (OpenAI-compatible) to return Japanese translation, furigana, romaji, and an example sentence; persist cards and review history in Postgres; implement a spaced-repetition scheduler (SM-2 or simplified algorithm) to queue due cards; review UI to present cards, capture user accuracy, and update scheduling; TTS playback using a cloud TTS API; payment stub or simple Stripe integration for subscription gating. Out of scope: live 1-on-1 lessons, managed Slack community, advanced analytics. Require: retry and error handling for API calls, input validation, migrations, integration tests for scheduler logic, and end-to-end tests for card creation and review flows.
How we checked3 sources · 3/3 runs agreed · evidence score 62

How the score was reached

  • Partly verdict base52
  • 3 cited sources+3
  • Price verified on pricing page+3
  • 3/3 assessment runs agreed+4
  • Evidence score62

The base comes from the verdict. Everything under it is a check that either happened or did not, and each one is a fact frozen in this record rather than a judgement made at render time - so the same evidence always produces the same number.

How scoring works →

Cited sources · 3

Every page the run actually retrieved.

Integrity checks

What held up, and what did not.

✓ Price read off the page✓ 3 independent runs, one answer✓ Citations limited to fetched pages! 1 moat recorded