Open Spaced Repetition (OSR) is an open-source community dedicated to the advancement of spaced repetition algorithms. We are the creators of the Free Spaced Repetition Scheduler (FSRS), which is backed by academic literatures and experiments. FSRS has been implemented in various programming languages, including Javascript, Golang, Rust, Python, and so on.
Our mission is to develop efficient, effective, and accessible spaced repetition algorithms that can be readily integrated into any educational software or system.
-
Multiple Language Support: ts-fsrs, go-fsrs, fsrs-rs, rs-fsrs, c/cpp binding, java binding, py-fsrs, cljc-fsrs, swift-fsrs, ex_fsrs, dart-fsrs and so on.
-
Scientifically-Backed:
- A Stochastic Shortest Path Algorithm for Optimizing Spaced Repetition Scheduling | Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining
- Optimizing Spaced Repetition Schedule by Capturing the Dynamics of Memory | IEEE Journals & Magazine | IEEE Xplore
- open-spaced-repetition/srs-benchmark: A benchmark for spaced repetition schedulers/algorithms (github.com)
-
Plugin & Add-on: fsrs4anki-helper, fsrs4tw, obsidian-spaced-repetition-recall, fsrs4remnote and so on.