GitHub

About

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.

Mission

Our mission is to develop efficient, effective, and accessible spaced repetition algorithms that can be readily integrated into any educational software or system.、

Origin

FSRS originates in the DHP model from MaiMemo which is a variant of the DSR (Difficulty, Stability, Retrievability) model used to predict memory states. Here are the papers:

Features

Acknowledgements

A special thanks to 墨墨背单词 (MaiMemo Inc.) for their support of FSRS development by allowing its research engineer, Jarrett Ye, to dedicate part of his working hours to this open-source project. This greatly helps in the continuous improvement and maintenance of FSRS for the benefit of the entire community.

Pinned Loading

  1. A curated list of awesome FSRS implementations, papers and resources

    675 44

  2. ts-fsrs is a versatile package written in TypeScript that supports ES modules, CommonJS, and UMD.

    TypeScript 773 72

  3. Python Package for FSRS Spaced Repetition

    Python 477 63

  4. FSRS for Rust, including Optimizer and Scheduler

    Rust 413 44

  5. A benchmark for spaced repetition schedulers/algorithms

    Jupyter Notebook 257 29

  6. A fast, dual‑engine spaced‑repetition simulator for comparing schedulers, memory models, and study behaviors at scale.

    Python 12 6

Repositories

Showing 10 of 94 repositories

  • ts-fsrs Public

    ts-fsrs is a versatile package written in TypeScript that supports ES modules, CommonJS, and UMD.

    open-spaced-repetition/ts-fsrs's past year of commit activity

    TypeScript

    773

    MIT

    72 2 8

    Updated Sep 2, 2026

  • awesome-fsrs Public

    A curated list of awesome FSRS implementations, papers and resources

    open-spaced-repetition/awesome-fsrs's past year of commit activity

    675

    CC0-1.0

    44 5 0

    Updated Sep 1, 2026

  • fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    open-spaced-repetition/fsrs-rs's past year of commit activity

    Rust

    413

    BSD-3-Clause

    44 3 4

    Updated Aug 31, 2026

  • open-spaced-repetition/fsrs-rs-dart's past year of commit activity

    Dart

    18 3 1 2

    Updated Aug 31, 2026

  • fsrs-rs-python Public

    Python bindings for fsrs-rs, hand-coded gradient, instead of pytorch. 2GB -> 1MB, save your disk!

    open-spaced-repetition/fsrs-rs-python's past year of commit activity

    Rust

    37 3 0 0

    Updated Aug 31, 2026

  • open-spaced-repetition/srs-benchmark-rust's past year of commit activity

    Rust

    1 0 0 0

    Updated Aug 30, 2026

  • srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    open-spaced-repetition/srs-benchmark's past year of commit activity

    Jupyter Notebook

    257 29 11 5

    Updated Aug 29, 2026

  • open-spaced-repetition/anki-revlogs-dataset-builder's past year of commit activity

    Python

    3

    AGPL-3.0

    3 0 1

    Updated Aug 26, 2026

  • open-spaced-repetition/fsrs-rs-nodejs's past year of commit activity

    Rust

    13

    MIT

    2 0 2

    Updated Aug 24, 2026

  • fsrs4anki Public

    A modern Anki custom scheduling based on Free Spaced Repetition Scheduler algorithm

    open-spaced-repetition/fsrs4anki's past year of commit activity

    Jupyter Notebook

    4,052

    MIT

    163 8 0

    Updated Aug 14, 2026

Read the original on github.com ↗