AnkiWeb
- Rating
- 5 (π 5 Β· π 0)
- Updated
- 2021-02-19
- Anki versions
- 2.1.40~
- Description language
- en
AnkiWeb addon 1490471827
Provides JavaScript API commands to retrieve reviewer deck and card information, counts, flags, scheduling data, and search cards, compatible with AnkiDroid JS API.
Open on AnkiWeb GitHub Ask about alternatives
stale
| Min Anki | Max Anki | Updated |
|---|---|---|
| 2.1.30 | 2.1.40+ | 2021-02-19 |
Loadingβ¦
Executes JavaScript commands for card reviewer backend functions, including setting flags, undo, going home, and deprecated pass/fail actions.
Brings AnkiDroid's JavaScript template API to Anki Desktop, enabling interactive card templates with programmatic control over reviewer, text-to-speech, card actions, tags, and UI.
Demonstrates sharing data between JavaScript and Python by using mw.web.eval to pass variables, window.localStorage to persist them, and mw.web.evalWithCallback to retrieve JavaScript values.
Grades Anki review answers with AI feedback, retrieves relevant uploaded materials, offers tutor mode, analytics, and batch assessment.
Generates AI explanations, practice questions, pathology comparisons, and deck-based study sections inside Anki via OpenAI or Gemini, with optional YouTube video search.
Displays a toolbar indicator in Anki showing the number of people known to have recovered from COVID-19, using Johns Hopkins data via a third-party API.
Anki JavaScript API to get cards information in reviewer window
This addon is made to work with AnkiDroid JS API.
https://ankiweb.net/shared/info/1490471827

To know more about the options view AnkiDroid JS API.
pycmd("AnkiJS.ankiGetNewCardCount()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetLrnCardCount()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetRevCardCount()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardMark()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardFlag()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardId()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardNid()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardDid()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardMod()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardType()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardQueue()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardLeft()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardDue()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardInterval()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardFactor()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardReps()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardLapses()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardODue()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetCardODid()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetNextTime1()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetNextTime2()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetNextTime3()", (ret) => {
console.log(ret);
});
pycmd("AnkiJS.ankiGetNextTime4()", (ret) => {
console.log(ret);
});
When quotes are needed in the search, e.g. "deck:My Deck" due to spaces in a deck name, they'll need to be escaped as the argument itself must be wrapped with single or double quotes.
pycmd("AnkiJS.ankiSearchCard('\"deck:My Deck\" MyField:*foo*')");