Skip to content

Latest commit

 

History

28 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skillcard

Working title.

Skillcard is a learning tool where every "flashcard" is a full interactive HTML widget — generated with AI assistance, tailored to the exact skill you're building, and scheduled for long-term retention.

The idea

Traditional flashcards are a prompt on one side and an answer on the other. That works for memorizing facts, but most valuable knowledge is a skill: writing code, recognizing patterns, applying concepts. Skillcard generalizes the flashcard into a learning unit — a self-contained interactive widget that can be anything the skill demands:

  • A leetcode-style card with a problem statement, embedded code editor, and a run button — marked complete when your solution passes the tests.
  • A free-response card ("What is the Model-View-Controller pattern?") where you type or speak your answer and an AI grader tells you whether you were right, wrong, or close — and fills in what you didn't mention.
  • A shader playground card that teaches a graphics concept through live experimentation.
  • An exploratory card that asks you to build a React component, then has the AI review your work and challenge you with a follow-up modification — no "correct answer" at all, just deliberate practice.
  • Or just a classic flip card, when that's all the material needs.

Because cards are AI-generated, filling a deck takes a description, not an evening of authoring. Describe what you want to learn; get a deck.

Core concepts

Cards are widgets under a minimal contract. A card is a sandboxed page that can do anything internally. The only thing the platform requires is that it signals when a session is over (optionally with a grade). Everything else — editors, canvases, audio, AI conversations — is the card's own business. This one contract is what makes the system composable: the scheduler, the generator, and the review UI all work against it, never against individual card types.

AI is in the loop, not just the authoring step. Cards can talk to an AI backend at review time — to grade fluid answers, give hints, act as a tutor, suggest follow-up challenges, or enrich a correct answer with what you missed. The product isn't just interactive flashcards; it's flashcards with a live teaching layer.

Randomized knowledge testing. A static card eventually tests whether you memorized the answer. Skillcard cards can regenerate their parameters on each review — a new array to reverse, a new scenario to diagnose — so repetition trains the skill, not the answer.

Three scheduling classes. Not every learning unit has a right answer, so not every card is graded:

Class What it is Example
srs Graded recall, scheduled by spaced repetition Flip cards, quizzes, coding challenges
interval Resurfaces on a cadence, no grade required "Practice this pattern weekly"
adhoc Pulled up on demand, never auto-queued Explorable playgrounds, open-ended practice

Cards are inspectable files. Every card lives on disk as a single source file plus metadata — a React module, or plain HTML. You can read it, hand-edit it, regenerate it, or share it.

Product principles

  1. Authoring friction near zero. The reason people abandon spaced-repetition tools is the cost of making good cards. Generation is the product's core promise.
  2. Minimal contract, rich services. The platform requires almost nothing of a card and offers it a lot (LLM access, grading helpers, theming, persistence). New card patterns must be inventable without changing the contract.
  3. Completion is required; grading is optional. Learning units are too diverse to force everything into correct/incorrect.
  4. Local-first, service-ready. One process you can run on your machine, architected so the same system can ship as a hosted service later.

Status

Early prototype. See docs/SPEC.md for the technical specification (card contract, host services, architecture).

Non-goals (for now)

  • Multi-user accounts, sharing, or a card marketplace
  • Mobile apps
  • Code execution beyond what runs in the browser (JS/TS in workers; Python via Pyodide is a candidate later)
  • Importing existing Anki decks

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages