Skip to main content

Anki Eudic

A small Python/Textual application that downloads an unknown or unfamiliar word list from Eudic and exports it as an Anki-ready, tab-separated text file. The API implementation follows the Eudic development guide included in this repository, including the category and paginated word-list endpoints.

Features

  • Terminal UI for saving a token, choosing a Eudic study list, previewing its words, and choosing the Anki export location and deck name.
  • Fetches every API page (up to Eudic's documented maximum page size of 100) and removes case-insensitive duplicates.
  • Exports word, definition, context, phonetic spelling, added date, and star rating.
  • Produces UTF-8 TSV with Anki file headers, HTML-safe content, and preserved line breaks. No Anki add-on or running Anki instance is required.
  • Keeps the authorization token out of the repository and export. Persisted tokens are stored by keyring in the operating system's credential service—not in a plaintext settings file.

Install

Python 3.10 or newer is required. From a clone of this repository:

python -m venv .venv
source .venv/bin/activate        # Windows: .venv\Scripts\activate
python -m pip install .
anki-eudic

For development and tests, use python -m pip install -e '.[dev]'.

Token security

Create or copy your authorization token from Eudic's Open API page. On first run, paste it into the password field and select Save token. Either abc... or the full NIS abc... authorization value is accepted. The field is masked and cleared after saving.

The app delegates persistence to the system credential store through keyring (for example, macOS Keychain, Windows Credential Locker, or a Linux Secret Service). It deliberately has no plaintext fallback. If the machine has no usable keyring, provide the token only to the launched process:

EUDIC_TOKEN='NIS your-token' anki-eudic

Avoid putting that command in shell history; a prompt is safer:

read -rsp 'Eudic token: ' EUDIC_TOKEN && export EUDIC_TOKEN && anki-eudic

The environment value takes precedence over a saved value. Forget saved token removes only the credential-store value.

Export and import

  1. Start anki-eudic (or python -m anki_eudic).
  2. Save/provide a token, then load the study lists.
  3. Pick the list where you keep unknown or unfamiliar words and select Fetch words.
  4. Review the preview, choose a .tsv/.txt destination and deck, and export.
  5. In Anki Desktop, choose File → Import, select the output file, map the six columns if necessary, and enable duplicate handling appropriate for your deck.

The first field is the spelling, so mapping Word to the note type's first field lets Anki identify duplicates. The exported headers select tab separation, HTML, and the chosen deck automatically on Anki versions that support text-file headers.

Keyboard shortcuts

  • r: reload study lists
  • q: quit

Limitations

  • This tool exports study-list content; it does not modify or delete anything in Eudic and does not invoke AnkiConnect.
  • Availability and unlocking behavior of the credential store depend on the OS.
  • Network/API errors are shown in the status panel. Tokens are never included in those messages.

Tests

pytest
ruff check .

Metadata

Release files for anki-eudic 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for anki-eudic 0.1.0
File Size Uploaded Provenance
anki_eudic-0.1.0.tar.gz 16.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for anki-eudic 0.1.0
File Interpreter ABI Platform
anki_eudic-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 27.9 kB

Release files / anki_eudic-0.1.0.tar.gz

Download URL anki_eudic-0.1.0.tar.gz
Size 16.8 kB
Tags Source
SHA-256 checksum
How to use checksums
bd4daa168b99f6d90ce3830a00215ca95b14bd9230b2f136a0713560f45c5cfb
BLAKE2b-256 checksum
How to use checksums
883936cdef9aed7e5b9b13286ff1c50d529336100b870e4939c81b2fcde1ad6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Release files / anki_eudic-0.1.0-py3-none-any.whl

Download URL anki_eudic-0.1.0-py3-none-any.whl
Size 11.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bdeed19768e7665e88228c4a85e104ea77dde465b1047a58ef7c8a79126bfcb1
BLAKE2b-256 checksum
How to use checksums
bd8a885c1d826e46133852bb0f66d1489107112d6db691a793f489596042a4d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Security for anki-eudic 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page