TutorLoom
The learning platform for companies, colleges and training institutes. Free and open source, with an Enterprise edition.
翻譯準備中
尚未收集儲存庫資訊。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
A reader for Ancient Greek in the browser: Homer, Herodotus and Thucydides with parsing, syntax, LSJ, and glosses and translations
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗A reader for Ancient Greek in the browser: Homer's Iliad and Odyssey, Herodotus and Thucydides, with every word's parsing, its role in the sentence and its dictionary entry, and, in the books that have them, a gloss and a note on every word and translations of every line.
Read it online: greek.kenaldo.dev
The reader only reads saved data: it asks no model anything, needs no account, and keeps nothing about you on the server (where you stopped reading stays in your browser; the site counts visits by day, with nothing that tells one visitor from another). It works on a monitor, a laptop, a tablet and a phone. The glosses, notes and translations were written once by Claude Opus 5.5, Anthropic's model: they can be wrong, so check them against the parsing and the dictionary. The reader tags them AI, and the treebanks' parsing and LSJ's definitions Perseus, GLAUx and LSJ.
More screens: the Library, an iPad, a phone.
| Text | Parsing and roles | Glosses, notes and translations |
|---|---|---|
| Homer, Iliad | The Perseus treebank, annotated by hand | Every book |
| Homer, Odyssey | The Perseus treebank, annotated by hand | Coming |
| Herodotus, Histories | GLAUx: part by hand, the rest by its parser | Coming |
| Thucydides, History of the Peloponnesian War | GLAUx: part by hand, the rest by its parser | Coming |
Every text has the Greek (Perseus), search that ignores accents and breathings, each word's parsing and role, LSJ's entry, how often its lemma occurs, and the structure of each sentence. The Library labels each text and book with what it has.
Iliad 1.42, Odyssey 5, or 1.42 in the text you are
reading.docs/reader.md describes every screen and layout.
To read the texts, you don't need to: they are at greek.kenaldo.dev, with everything the reader's database holds. To run the reader on your own computer, you need Docker, or Python 3.12 or newer, and about 600 MB of disk for the data.
The code:
git clone https://github.com/Kenaldo9/ancient-greek-reader.git
cd ancient-greek-reader
cp .env.example .env
Start it, with Docker:
docker compose up -d # http://localhost:8999
The container runs as user and group 1000, so that files it writes into
data/ stay yours; if your IDs differ (id -u, id -g), set
GREEK_UID and GREEK_GID in .env. After pulling new code, run
docker compose up -d --build.
Or with Python:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python greek.py web # http://127.0.0.1:8000
The texts. The reader's own database is not offered for download for
now; it may be published later, perhaps once every text has its
glosses, notes and translations, but that is not decided
(docs/data.md). You can build one from the open
sources, free (with Docker, docker compose run --rm greek in place of
python greek.py):
python greek.py fetch Homer # pick the Iliad; note its text ID
python greek.py study import-treebank TEXT_ID --work iliad
python greek.py study import-lsj # LSJ's entries for its lemmas
The Library then shows the Iliad with its parsing and dictionary.
Glosses, notes and translations are made with greek study batches,
which need an Anthropic API key in .env and cost money
(docs/cli.md).
Newer code upgrades the database when it starts, after copying it beside
itself (Database upgrades). The same
program is a command line too: python greek.py --help, or
docker compose run --rm greek --help (docs/cli.md). It can
read and search in the terminal, fetch more texts from Perseus, and make
study data (which needs an Anthropic API key in .env, and costs money).
greek study sent each passage of the Iliad (whole sentences, up to ten
lines) to Claude Opus 5.5 in Message Batches, with every word's lemma and
parse from the treebank, and saved the answers: a gloss and a note on each
word, a literal translation of each line, a fluent translation of the
passage, and a remark wherever the model disagreed with the treebank. Use
labels, dictionary forms, verb constructions and principal parts were made
the same way. Answers are checked when they are collected, and missing ones
asked again. The prompts are in greek/api/ (study.py, uses.py,
forms.py and parts.py), made for each work from its profile in
works.py; docs/data.md has the details.
greek/web/static/.The reader is a hobby project, kept up as time allows. If a gloss, a note or a translation is wrong, please open an issue or email [email protected], with the book and line. There is no promise of a reply or of new features.
ARCHITECTURE.md explains how the code is put together, and CLAUDE.md its conventions, tests and screenshot checks.
pip install httpx # for the route tests
python -m pytest tests/ -q # all tests
pip install playwright && playwright install chromium webkit # optional browser tests
Tests use their own temporary databases and never call a model. Browser tests skip when Playwright or a browser is missing.