Dog Study Buddy 🐶
A tiny virtual dog that lives on your Anki review streak.
A Tamagotchi-style dog sits on your Anki home screen and depends entirely on your daily reviews. Feed it, keep it hydrated, dress it up — and whatever you do, don't skip a day.
Daily milestones
| Goal |
Reward |
| 💧 50 cards |
Water bowl filled |
| 🍗 100 cards |
Dog is fed for the day (with a happy bark!) |
| 🧥 500 cards |
A cozy striped sweater |
| 🎩 50 correct answers in a row |
A knitted pompom hat |
⚠️ Mortality
Miss a day of feeding and your dog becomes a ghost, complete with a tombstone recording how many faithful days it lived. Feed the ghost (hit the food goal again) to bring it back to life. If mortality is too much during exam week, there's a mercy toggle in settings.
Choose your dog
Eleven breeds, each with its own default name — including Huckleberry Finn himself: the length and height of a dachshund, the ears of a much larger dog. Modeled faithfully on a very good real one, and the default dog out of the box. Rumor has it that Huckleberry Finn, and only Huckleberry Finn, is hiding one more unlockable somewhere past the hat... 😎
More features
- Mini dog during reviews — a small version of your dog sits in the corner of the review screen with live progress toward the next milestone and your current streak. It updates the instant you answer, and never blocks clicks.
- Milestone celebrations — popups (and one bark) exactly once per milestone per day.
- Day-cutoff aware — the dog's "day" follows your Anki day-cutoff setting (e.g. a 4am rollover), so late-night cram sessions count toward the right day.
- Fully configurable — name, breed, all card goals, streak length, sounds, the mini dog, and whether your dog can die: Tools → Dog Study Buddy Settings…
Installation
From AnkiWeb: Tools → Add-ons → Get Add-ons, and paste the add-on code from the AnkiWeb listing.
From a release file: download dog_study_buddy.ankiaddon, then Tools → Add-ons → Install from file… and restart Anki.
Requires Anki 2.1.50 or newer.
Configuration
All settings live in Tools → Dog Study Buddy Settings… (or the add-on config editor):
| Key |
Default |
Meaning |
dog_name |
per breed |
Your dog's name |
breed |
huck |
One of the eleven breed keys |
water_goal |
50 |
Cards/day to fill the water bowl |
food_goal |
100 |
Cards/day to feed the dog (survival threshold) |
sweater_goal |
500 |
Cards/day for the sweater |
hat_streak |
50 |
Correct answers in a row for the hat |
death_enabled |
true |
Whether the dog can become a ghost |
show_during_review |
true |
Mini dog in the review corner |
bark_sound |
true |
Bark when fed |
Development
The add-on is a single __init__.py — dogs are parameterized inline SVG (no image assets), the bark is a synthesized WAV, and daily state lives in user_files/state.json (which survives add-on updates).
To build the distributable file:
cd dog_study_buddy && zip -r ../dog_study_buddy.ankiaddon __init__.py config.json config.md manifest.json sounds
Note for AnkiWeb: the zip must contain the files at its root (no top-level folder) and no __pycache__ folders.
The life-and-death logic (day rollovers, multi-day gaps, revival, milestone announcements) is covered by tests that run against a mocked aqt — see tests/test_lifecycle.py.
License
MIT — see LICENSE.