Anki add-on: JLPT Database graph relation crawler

Anki Relation Crawler Add-on An automated Anki add-on based on the grammar-note designed to crawl through interconnected grammarstructures and build study clusters based on cross-references. It scans your selected base cards, follows embedded links to find related topics, and can automatically group them for focused study sessions. ⚙️ How It Works The crawler relies on two specific fields in your Anki notes (configurable at the top of the script): Source Label Field ( Level And Grammar Point ) : The main title or identifier of the note. Target Field ( Connected Grammar Points from jlptsensei (optional) ) : The field containing internal Anki references (e.g., [Grammar Point|nid123456] ). When executed, the add-on reads the internal references of the selected cards, searches the database for those matching notes, and repeats this process depending on the "Search Depth" (Degree) you specify. ✨ Features Recursive Search Depth (Degree): Choose how deep the crawler should follow links. A degree of 1 finds immediate neighbors; a degree of 2 finds neighbors of those neighbors. Smart Tagging System: Automatically tag all discovered notes. You can let the add-on generate a tag based on the card names and depth, or input a custom tag name. The final tag is also copied to your clipboard. Instant Filtered Decks: Optionally compile all found and tagged cards into a brand new Custom Study/Filtered Deck with one click, perfect for reviewing related concepts together. Browser Integration: View the entire network of discovered cards instantly in the Anki Card Browser. Detailed Logs: Get an execution report at the end showing exactly which cards were found, which were skipped, and where links might be broken. 🚀 Usage Guide Open the Anki Browser . Select one or more "Base Cards" you want to start the crawl from. In the top menu, click Edit -> Tag & Process Degree Relations , or use the keyboard shortcut Ctrl+Alt+R . A series of pop-up dialogs will guide you through the process: Relation Degree: Enter the search depth (0 to 5). Add Tags: Decide whether you want to apply a tag to the results. Custom Tag: If tagging is enabled, you can define a specific tag name or use the auto-generated one. Filtered Deck: Decide if you want an Anki Filtered Deck created automatically for these tags. Browser Overview: Choose whether to display the results in the browser immediately. Execution Log: Choose to see a detailed summary of the script's operations once finished. ⚠️ Requirements & Notes The script targets notes specifically within a deck named grammar . Ensure your target cards are located there, or modify the deck:grammar search string in the script to match your setup. It parses Anki NID links formatted exactly as [Name|nid12345] . Certain hardcoded exceptions for specific grammar points (like 1:に ) are mapped out in the EXCEPTIONS dictionary at the top of the file to improve search accuracy.

GitHub repository: nihonmiah71/jlpt-grammar-database
Repository description: Grammar data base that is also used for mining japanese sentences from lightnovels or other web resources and functions as a backend for related addons and workflows.