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

    231 14

  2. fsrs4anki fsrs4anki Public

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

    Jupyter Notebook 3.4k 148

  3. fsrs4anki-helper fsrs4anki-helper Public

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

    Python 254 26

  4. fsrs-rs fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    Rust 258 26

  5. ts-fsrs ts-fsrs Public

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

    TypeScript 375 36

  6. srs-benchmark srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    Jupyter Notebook 129 14

Repositories

Showing 10 of 77 repositories
  • srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    open-spaced-repetition/srs-benchmark’s past year of commit activity
    Jupyter Notebook 129 14 8 1 Updated Jun 6, 2025
  • fsrs-vs-sm17 Public

    A simple comparison between FSRS and SM-17

    open-spaced-repetition/fsrs-vs-sm17’s past year of commit activity
    Jupyter Notebook 36 4 0 0 Updated Jun 6, 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 375 MIT 36 0 3 Updated Jun 6, 2025
  • .github Public
    open-spaced-repetition/.github’s past year of commit activity
    1 1 0 0 Updated Jun 6, 2025
  • fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    open-spaced-repetition/fsrs-rs’s past year of commit activity
    Rust 258 BSD-3-Clause 26 1 0 Updated Jun 6, 2025
  • awesome-fsrs Public

    A curated list of awesome FSRS implementations, papers and resources

    open-spaced-repetition/awesome-fsrs’s past year of commit activity
    231 CC0-1.0 14 4 1 Updated Jun 5, 2025
  • rb-fsrs Public

    A ruby implementation of the Open Spaced Repetition's Free Spaced Repetition Scheduler

    open-spaced-repetition/rb-fsrs’s past year of commit activity
    Ruby 13 MIT 9 2 2 Updated Jun 5, 2025
  • py-fsrs Public

    Python Package for FSRS Spaced Repetition

    open-spaced-repetition/py-fsrs’s past year of commit activity
    Python 272 MIT 37 1 1 Updated Jun 5, 2025
  • expected-workload Public

    A deterministic simulator that calculates expected workload for SRS based on desired retention.

    open-spaced-repetition/expected-workload’s past year of commit activity
    Jupyter Notebook 4 0 0 0 Updated Jun 4, 2025
  • Anki-button-usage Public

    A preliminary analysis about the button usage in Anki dataset

    open-spaced-repetition/Anki-button-usage’s past year of commit activity
    Python 3 1 0 1 Updated Jun 4, 2025