Zen
A spaced repetition CLI for active recall using the FSRS algorithm.
Features
- Simple card creation: Create flashcards directly from the command line
- Question-answer format: Focus on what matters - questions and answers
- FSRS algorithm: Uses the modern Free Spaced Repetition Scheduler for optimal learning
- CLI-first: All interactions through the terminal
- Easy editing: Cards stored as simple markdown files
- Efficient storage: Hybrid approach with markdown for content and SQLite for scheduling
Installation
Or clone and build from source:
Usage
Create a new card
You'll be prompted to enter the answer (multi-line supported). Press Ctrl+D or enter an empty line to finish.
Future commands (coming soon)
Card Storage
Cards are stored in ~/.zen/:
- Content:
~/.zen/cards/*.md- Simple markdown files - Metadata:
~/.zen/zen.db- SQLite database for scheduling
Card Format
Cards use a minimal format:
What is your question?
---
This is the answer.
Everything before \n\n---\n\n is the question, everything after is the answer.
Roadmap
- Phase 1: Basic card creation and storage
- Phase 2: Fuzzy search and editing with TUI
- Phase 3: Review sessions with FSRS scheduling
- Phase 4: Statistics and polish
- Phase 5: Import/export and advanced features
See DESIGN.md for detailed feature planning.
Design Principles
- No full-screen interfaces: All TUIs are max half-terminal height
- Vim-like navigation: Ctrl+j/k for movement
- No quotes needed: Natural command syntax
- Easy editing: Edit cards in your favorite editor
- Non-invasive: Minimal, focused interface
Development
Build
Test
Run
License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.