AnkiTools
anki-connect
AnkiTools | anki-connect | |
---|---|---|
1 | 28 | |
47 | 1,858 | |
- | - | |
10.0 | 0.0 | |
over 5 years ago | 5 months ago | |
Python | Python | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
AnkiTools
-
On Anki's Database
Not needing Anki itself is pretty much a requirement for me, because that's the way which makes sense in my worldview. Tools work independently and feed into each other—not get slapped onto each other, which kinda smells like a whiff of bad OOP.
I began a feeble attempt at a lib for my own purposes, but I had to take Anki db structs a little at a time just to keep my frustration in check.
There are in fact some libs for writing Anki data: https://github.com/kerrickstaley/genanki and maybe https://github.com/patarapolw/AnkiTools — but genanki, while looking quite good for one-time generation, doesn't seem to be able to update cards.
Afaik Anki itself does include Python libs for creating and manipulating db records—however dunno if they work without the full app running, and on top of that I personally keep trying to use Lua, since it runs circles around Python in terms of speed.
anki-connect
-
I created a program that finds out which anki cards out of 50_000 are in english and deletes them in 2 minutes
Creating a Node.js Scraper: Initially, I created a web scraper for my Anki collection using Anki Connect and Node.js. I chose Node.js because I believed that using Rust would require defining every field for the response object(later found out I was wrong). Encountered issues: My program kept crashing due to not specifying the query to be of the same type(as I am writing this I realize I could have just did if(note.field == undefined) continue;) or the TypeScript ?. Resorting to single requests: To resolve the issue, I decided to send one request per card, resulting in processing 50,000 cards, which took 15-30 minutes.
-
Ankiconnect: insertReviews() function
Has anyone used the insertReviews() function before to simulate answering cards programmatically? I’m not able to find much information online regarding it (perhaps because it is relatively new). I am not confident enough in my knowledge of Anki’s review algorithm to attempt replicating its behavior on all 9 of the required inputs for each review (see the 'Manual Analysis' subsection here); wanted to reach out here to see if anyone had experience with the function they would like to share.
-
Org-Drill vs Anki?
I do however create all my decks in Emacs' Org mode using louietan/anki-editor and export to Anki via the plugin FooSoft/anki-connect. This way I never worry about my decks getting corrupted. I actually just have one large deck but anki-editor allows me to separate my deck into separate org files which is convenient.
-
Ask HN: Better way to create Anki cards?
Another tool I've used if you have the Anki app is the Anki-Connect plugin https://github.com/FooSoft/anki-connect
It supports curl, python, javascript, etc to add cards and supports an incredible amount of actions to interact with Anki.
Example:
-
Show HN: SkillPress – Learn JavaScript via spaced repetition and active recall
Just to add a footnote to the above: I wasn't aware of https://foosoft.net/projects/anki-connect/ so what I'm thinking about is very doable right now, and probably being done.
-
Anki Connect: [Errno 13] Permission denied when try to add audio
I've made a small script to make cards with audio. Following the manual at https://foosoft.net/projects/anki-connect/, I have an audio field of:
-
Doing cards outside of Anki apps?
I dont think there's a public/documented Ankiweb api. You could use AnkiConnect to interface with your locally running instance of Anki: https://foosoft.net/projects/anki-connect/
-
Filtering A deck of cards based on a list in Excel?
Read the AnkiConnect documentation. You can interact with AnkiConnect in any language environment you wish. I've mostly - but not exclusively - used Python. It would probably be a very forgiving way to begin.
-
anki cards -> storage method? also how to be efficient? 🤨
I write my cards in plaintext (Emacs Org mode via anki-editor) and push them to Anki via anki-connect. The advantages for me are:
-
PDF Note Style UI/UX in Remnote
create Anki cards with Emac's anki-editor and push them to Anki with anki-connect. There is also a markdown equivalent of anki-editor if you prefer that format plus packages to perform your SRS within Emacs itself such as org-drill, org-fc and pamparam.
What are some alternatives?
genanki - A Python 3 library for generating Anki decks
Textractor - Extracts text from video games and visual novels. Highly extensible.
apy - CLI script for interacting with local Anki collection
markdown-anki-decks - Tool for converting markdown files into anki decks
Obsidian_to_Anki - Script to add flashcards from text/markdown files to Anki
CardOverflow
mdanki - Markdown to Anki converter
DufteRanatomie - Wir übersetzen das Anki-Deck "Dope Ranatomy" ins Deutsche. / We're translating the Anki-Deck "Dope Ranatomy" into German.
Lurnby - A tool for active reading and personal knowledge management
sxhkd - Simple X hotkey daemon
nihongo-shooter - Fast paced Japanese learning by shooting the correct word definitions