What is Spaced Repetition?
Spaced repetition is a learning technique that schedules reviews at increasing intervals. Instead of cramming information all at once, you review material just before you’re about to forget it. This technique is backed by decades of cognitive science research and is proven to:- Improve long-term retention by up to 200%
- Reduce study time by focusing on difficult material
- Build stronger neural pathways through optimally-timed reviews
- Combat the forgetting curve discovered by Hermann Ebbinghaus
The Science: Each time you successfully recall a term, the memory becomes stronger and the interval before the next review increases. This exploits the psychological spacing effect to encode information into long-term memory.
The SM-2 Algorithm
Vocab Vault uses the SM-2 algorithm developed by Piotr Wozniak in 1987. This algorithm calculates optimal review intervals based on your performance.How It Works
Each flashcard has three key metrics:- Ease Factor: How easy this card is for you (starts at 2.5)
- Interval: Number of days until the next review
- Repetitions: Successful reviews in a row
Quality Ratings
When reviewing a card, you rate your recall using simplified buttons:Again
You didn’t remember it. The card resets to review tomorrow.
Hard
You remembered it with serious difficulty.
Good
You remembered it with some hesitation.
Easy
Perfect recall! You knew it instantly.
Interval Scheduling
The algorithm calculates your next review date based on your performance:Ease Factor Adjustment
Your ease factor adjusts based on how well you recall the card:- Easy answers (quality 5) increase the ease factor → longer future intervals
- Hard answers (quality 3) slightly decrease it → shorter intervals
- Wrong answers (quality < 3) significantly decrease it → more frequent reviews
- The minimum ease factor is 1.3 to prevent cards from getting stuck
Mastery Levels
As you review cards, they progress through mastery levels:Study Queue Algorithm
Vocab Vault intelligently combines due cards and new cards in your study queue:- Review due cards before they’re forgotten
- Steadily introduce new material (10 new cards per day by default)
- Don’t get overwhelmed with only new content
Retention Statistics
Track your learning progress with detailed statistics:- Learned: Total cards you’ve reviewed at least once
- Learning: Cards with intervals < 21 days
- Mature: Cards with intervals ≥ 21 days (long-term memory!)
- Due Today: Cards scheduled for review today
- Average Ease: Your overall ease factor across all cards
Implementation Details
The SRS system is implemented in/src/lib/sm2.ts:
initializeCard(termId): Creates a new SRS card with default valuesprocessReview(card, quality): Updates card based on your rating (0-5)isDue(card): Checks if a card needs review todaygetDueCards(cards): Gets all cards due for reviewgetStudyQueue(allTermIds, cards, newCardsPerDay): Builds your study session
Best Practices
Be honest with your ratings
Be honest with your ratings
Don’t mark a card as “Easy” if you hesitated. Accurate ratings ensure optimal scheduling.
Review daily
Review daily
Consistency is key. Even 5-10 minutes daily is more effective than hour-long sessions once a week.
Don't skip difficult cards
Don't skip difficult cards
Cards you struggle with need more reviews. Embrace the “Again” button—it’s helping you learn!
Limit new cards
Limit new cards
Start with 10 new cards per day. Increase gradually as you get comfortable with your review load.
Related Features
Daily Goals
Set daily study targets to stay consistent
Streaks
Build momentum with daily practice streaks
Achievements
Unlock achievements as you master categories