Skip to content
@open-spaced-repetition

Open Spaced Repetition

We are developing open-source spaced repetition algorithms for any spaced repetition software/system.

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.

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. awesome-fsrs awesome-fsrs Public

    A curated list of awesome FSRS implementations, papers and resources

    268 15

  2. fsrs4anki fsrs4anki Public

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

    Jupyter Notebook 3.4k 150

  3. fsrs4anki-helper fsrs4anki-helper Public

    An Anki add-on that supports Postpone & Advance & Load Balance & Easy Days & Disperse Siblings & Flatten

    Python 256 26

  4. fsrs-rs fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    Rust 269 26

  5. ts-fsrs ts-fsrs Public

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

    TypeScript 403 43

  6. srs-benchmark srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    Jupyter Notebook 136 15

Repositories

Showing 10 of 79 repositories
  • java-fsrs Public

    Java library for FSRS Spaced Repetition

    open-spaced-repetition/java-fsrs’s past year of commit activity
    Java 1 MIT 0 0 0 Updated Jul 10, 2025
  • fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    open-spaced-repetition/fsrs-rs’s past year of commit activity
    Rust 269 BSD-3-Clause 26 0 0 Updated Jul 9, 2025
  • srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    open-spaced-repetition/srs-benchmark’s past year of commit activity
    Jupyter Notebook 136 15 9 1 Updated Jul 9, 2025
  • fsrs-optimizer Public

    FSRS Optimizer Package

    open-spaced-repetition/fsrs-optimizer’s past year of commit activity
    Python 85 BSD-3-Clause 14 0 3 Updated Jul 9, 2025
  • fsrs-rs-c Public

    c binding, also dynamic library

    open-spaced-repetition/fsrs-rs-c’s past year of commit activity
    C 0 MIT 0 0 0 Updated Jul 8, 2025
  • fsrs-rs-dart Public

    dart binding for fsrs-rs

    open-spaced-repetition/fsrs-rs-dart’s past year of commit activity
    Dart 9 1 0 1 Updated Jul 7, 2025
  • fsrs-rs-php Public

    A PHP binding for the FSRS (Free Spaced Repetition Scheduler) Rust implementation.

    open-spaced-repetition/fsrs-rs-php’s past year of commit activity
    Rust 2 0 0 1 Updated Jul 7, 2025
  • 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 403 MIT 43 1 1 Updated Jul 7, 2025
  • fsrs4anki-helper Public

    An Anki add-on that supports Postpone & Advance & Load Balance & Easy Days & Disperse Siblings & Flatten

    open-spaced-repetition/fsrs4anki-helper’s past year of commit activity
    Python 256 MIT 26 11 (6 issues need help) 1 Updated Jul 5, 2025
  • .github Public
    open-spaced-repetition/.github’s past year of commit activity
    1 1 0 0 Updated Jul 1, 2025