Skip to content

hgiesel/anki_straight_reward

Repository files navigation

badge

Straight Reward

This add-on increases the ease of Anki cards when you consecutively rate them "Good", or "Easy". Rating a card "Good", or "Easy" is considered a "success". Once you exceed a specific amount of successes, it is considered a "straight success". In such a case, Straight Reward will raise the ease of the cards.

Setting the Options

After installing the addon you will another option tab under the deck options called "Straight Rewards":

Setting Menu
  • Begin at straight of length: Length of what is considered a straight success. At this length, ease rewards will be applied. The value is the same as deactivating Straight Rewards. (default: 0)

  • Enable notifications: Enable or disable the notifications that arise during review. (default: on)

  • Base ease reward: One of the two values for calculating the ease reward. (default: 15)

  • Step ease reward: One of the two values for calculating the ease reward. (default: 5)

  • Start at ease: Only cards with an ease factor between (inclusive) "Start Ease" and "Stop Ease" are considered for ease rewards. (default: 130)

  • Stop at ease: Only cards with an ease factor between (inclusive) "Start Ease" and "Stop Ease" are considered for ease rewards. (default: 250)

Calculating Ease Rewards

Formula for calculating the Ease Reward
base_reward + step_reward ⋅ (straight_length - required_straight_length)

An Example:

  1. You rated a card "Good" for the sixth time in a row.

  2. The card currently has an ease factor of 250%.

  3. You have a straight length of 4

  4. You have a base reward of 15%

  5. You have a step reward of 5%

  6. You have a start ease of 130%

  7. You have a stop ease of 270%

So in this case we have a straight success (because 6 ≥ 4).
The formula yields: 15% + 5% ⋅ (6 - 4) = 15% + 10% = 25%
So the answer is final ease is 250% + 25% = 275%. But Wait!
275% is more than the stop ease of 270%: So the ease will be set to the maximum ease of 270%.


Detecting Straight Successes

The addon knows two mechanisms to detect cards which apply for an ease reward:

The Review Hook

The review hook increases the ease of cards during the review. You will get a notification whenever a success straight is detected:

award notification
Figure 1. Award notification

The Review hook respects the "Undo" feature. Undoing will also undo the additional straight reward.

The Sync Hook

The sync hook increases the ease of cards during syncing. Applies when you do reviews on another platform (e.g. AnkiMobile or AnkiDroid) and sync those to Desktop Anki.

sync notification
Figure 2. Sync notification

All ease changes applied through the sync hook are logged in the addon folder under user_files/sync_log.

Building

  1. Run yarn && yarn build in /web

  2. Run ./tools/compile.sh