Repository Map
All repositories live in the
sanskrit-lexicon GitHub organization.
Per-dictionary repositories
Each dictionary has its own repo, named by its code. Examples (see the full catalog):
| Code | Dictionary | Repo |
|---|---|---|
MWS | Monier-Williams | MWS |
AP90 | Apte (1890) | AP90 |
PWG | Böhtlingk-Roth (large) | PWG |
PWK | Böhtlingk (shorter) | PWK |
GRA | Grassmann (Rig-Veda) | GRA |
Infrastructure repositories
| Repo | Role |
|---|---|
csl-orig | Canonical source: v02/{dict}/{dict}.txt for every dictionary |
csl-pywork | Build tooling: generate_dict.sh, make_xml.py, validators |
csl-corrections | Audit trail: change files grouped in batch_YYYYMMDD/ |
csl-websanlexicon | Web/display assets consumed by generation |
csl-apidev | Web backend — the RESTful + Salt API (PHP) |
csl-app | Cross-platform app (Android/iOS/macOS/Linux/Windows; Dart/Flutter) |
csl-standards | Shared standards (incl. the normative Salt API contract) |
csl-inflect | Inflected-forms generation (e.g. MW inflected forms) |
csl-sqlite | The per-dictionary SQLite search databases (published via GitHub Releases) |
csl-json | JSON form of the dictionary data ({words, text}) |
cologne-stardict | StarDict / offline packaging (via Babylon export) |
csl-doc | Sphinx per-dictionary front-matter / prefaces documentation |
Other infrastructure repos (csl-atlas, csl-observatory, …) support tooling and
observability. See Data Formats for how the SQLite, JSON, and
StarDict artifacts are produced.
Dictionary code vs. repository name
Conventions shared across repos
- Session state: each repo keeps a tracked
.ai_state.mdjournal. - Correction pattern: most repos apply corrections via
updateByLine.pychange files (see Change Files). - Input files for the large German dictionaries live in sibling
*xmlrepos (e.g.../pwgxml/pwg.xml,../mwsxml/mws.xml).