Skip to main content

Build Status Coverage

echo-words

A private vocabulary tutor for every word you meet. Send a word, a phrase or a whole sentence, and echo-words explains what a dictionary will not: every sense with its register, how the word is really used, where it comes from, examples worth copying. Then it writes the flashcard for you — in both directions, with a real voice reading the word aloud — into the Anki deck you already review. It explains; Anki makes you remember.

A word, a phrase, a sentence
Analysis, audio, card in Anki
A sentence, translated and explained

What one word gets you:

  • an explanation, not a translation — every target-language-distinct sense with its register, the collocations and prepositions the word takes, what it is confused with, its origin, and examples with their translations; an idiom or phrase is explained as a whole and also offers its component words as chips
  • one selected sense, reviewed four ways — the unit and its translations are asked in both directions, then its example is asked once highlighted and once gapped; every sense remains available as a chip for a separate note
  • a real voice, not a robot — natural-sounding audio, in the app and on the card
  • a whole sentence gets a lesson instead — translated, with what is hard in it explained, and every word plus the expressions worth learning offered as chips; tapping one creates its own four-card note
  • a deeper entry when you want one — one tap re-asks the strongest model for a lexicographer's article: every sense including the rare ones, etymology in depth, near-synonyms, the mistakes learners make
  • nothing to pay — a pool of free LLM providers answers; a paid model is optional and capped

Documentation

echo-words

Development
uv sync
npm --prefix webapp ci
inv dev     # http://127.0.0.1:8080
inv test    # Python + frontend suites
inv pre     # ruff, ruff-format, pyrefly, file hygiene

inv test silently skips the frontend suite when webapp/node_modules is missing, so npm ci is part of the setup, not an optional extra. Never call Ruff directly — inv pre is the only gate that matches CI.

Deployment is invoke over ssh, and the frontend is built on the VM by the deploy itself:

inv setup-app --with-host-prep   # one-time, idempotent
inv deploy --ref=main
inv status
inv logs

See Development and Deploy to Oracle Cloud in the docs.

Reports

Created with cookiecutter using template

Release files for echo-words 1.5.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 echo-words 1.5.0
File Size Uploaded
echo_words-1.5.0.tar.gz 1.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for echo-words 1.5.0
File Interpreter ABI Platform
echo_words-1.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.9 MB

Release files / echo_words-1.5.0.tar.gz

Download URL echo_words-1.5.0.tar.gz
Size 1.9 MB
Tags Source
SHA-256 checksum
How to use checksums
8a0ce59aebcc114379fc500ac77d5c9de84d318546fe1a0d09bbd195ae8b94a8
BLAKE2b-256 checksum
How to use checksums
6a53f282a4b8230fb847169e4957c1632941889e460af7042d05a5a6c6cc13fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / echo_words-1.5.0-py3-none-any.whl

Download URL echo_words-1.5.0-py3-none-any.whl
Size 66.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7aa2a3da8ad5ce24ad26fa2fa30a2d184fbd3410b63907870e9136012ea91862
BLAKE2b-256 checksum
How to use checksums
e1fb6848f8d79090eee12b008189d097c2e45ab6fb190cfa6ab50a73e3bf857a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

1.12.2

2 release files

1.12.1

2 release files

1.12.0

2 release files

1.11.2

2 release files

1.11.1

2 release files

1.11.0

2 release files

1.10.1

2 release files

1.10.0

2 release files

1.9.0

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.7.4

2 release files

1.7.3

2 release files

1.7.2

2 release files

1.7.1

2 release files

1.7.0

2 release files

1.6.0

2 release files

This release

1.5.0 This release

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

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