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

    449 24

  2. srs-benchmark srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    Jupyter Notebook 197 23

  3. ts-fsrs ts-fsrs Public

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

    TypeScript 579 56

  4. fsrs-rs fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    Rust 333 32

  5. py-fsrs py-fsrs Public

    Python Package for FSRS Spaced Repetition

    Python 389 51

  6. obsidian-spaced-repetition-recall obsidian-spaced-repetition-recall Public

    Forked from st3v3nmw/obsidian-spaced-repetition

    Fight the forgetting curve by reviewing flashcards & entire notes on Obsidian.md

    TypeScript 196 14

Repositories

Showing 10 of 87 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 579 MIT 56 1 4 Updated Feb 25, 2026
  • fsrs-rs Public

    FSRS for Rust, including Optimizer and Scheduler

    open-spaced-repetition/fsrs-rs’s past year of commit activity
    Rust 333 BSD-3-Clause 32 2 4 Updated Feb 23, 2026
  • rs-fsrs Public

    Rust-based Scheduler for FSRS

    open-spaced-repetition/rs-fsrs’s past year of commit activity
    Rust 47 MIT 9 1 1 Updated Feb 23, 2026
  • fsrs-rs-python Public

    Python bindings for fsrs-rs, use burn-rs, instead of pytorch. 2GB -> 6MB, save your disk!

    open-spaced-repetition/fsrs-rs-python’s past year of commit activity
    Rust 30 2 2 4 Updated Feb 23, 2026
  • r-fsrs Public

    R bindings for fsrs-rs spaced repetition algorithm

    open-spaced-repetition/r-fsrs’s past year of commit activity
    R 3 0 0 0 Updated Feb 19, 2026
  • srs-simulator Public

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

    open-spaced-repetition/srs-simulator’s past year of commit activity
    Python 8 2 0 0 Updated Feb 13, 2026
  • fsrs-rs-c Public

    c binding, also dynamic library

    open-spaced-repetition/fsrs-rs-c’s past year of commit activity
    C 5 MIT 1 0 1 Updated Feb 5, 2026
  • rs-fsrs-java Public

    Java binding for rs-fsrs

    open-spaced-repetition/rs-fsrs-java’s past year of commit activity
    Rust 14 MIT 0 1 1 Updated Feb 3, 2026
  • srs-benchmark Public

    A benchmark for spaced repetition schedulers/algorithms

    open-spaced-repetition/srs-benchmark’s past year of commit activity
    Jupyter Notebook 197 23 7 4 Updated Feb 3, 2026
  • fsrs-optimizer Public

    FSRS Optimizer Package

    open-spaced-repetition/fsrs-optimizer’s past year of commit activity
    Python 103 BSD-3-Clause 15 0 2 Updated Feb 2, 2026