fsrs_dart 0.1.0 copy "fsrs_dart: ^0.1.0" to clipboard
fsrs_dart: ^0.1.0 copied to clipboard

Free Spaced Repetition Scheduler (FSRS) in Dart.

example/example.dart

import 'package:fsrs_dart/fsrs_dart.dart';

void main() {
  final fsrs = Fsrs();
  final now = DateTime.now().toUtc();

  // Create a fresh card
  final card = fsrs.createEmptyCard(now: now);
  print('New card state: ${card.state.name}');

  // Preview next due intervals for all available grades
  final preview = fsrs.repeat(card, now: now);
  for (final entry in preview.entries) {
    print('${entry.key.name}: due in ${entry.value.interval}');
  }

  // User rates the card as "good"
  final result = fsrs.next(card, FsrsRating.good, now: now);
  print('Reviewed card due: ${result.card.due}');
  print('Stability: ${result.card.stability}');
  print('Difficulty: ${result.card.difficulty}');

  // Check recall probability at current time
  final retrievability = fsrs.getRetrievability(result.card, now: now);
  print('Retrievability: ${(retrievability * 100).toStringAsFixed(1)}%');
}
0
likes
150
points
76
downloads

Documentation

API reference

Publisher

verified publisherpusk.software

Weekly Downloads

Free Spaced Repetition Scheduler (FSRS) in Dart.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

code_assets, convert, crypto, ffi, hooks, logging, meta, native_toolchain_rust

More

Packages that depend on fsrs_dart