A vibe-coded javascript library for working with HMT publications

hmt-lib.js is a javascript library for working with published releases of the Homer Multitext project’s archive in a web browser or other javascript environment.
vibe coding
cite
new package
Author

Neel Smith

Published

May 25, 2025

New package announcement: hmt-lib.js

Summary and motivation

hmt-lib.js is a javascript library for working with published releases of the Homer Multitext project’s archive in web browser or other javascript environment.

Release notes

Initial release. Main features:

  • load current published release of the HMT archive
  • extract diplomatic or normalized text corpora
  • extract and query an index linking Iliad passages and scholia
  • extract and query digital scholarly edition records linking texts, pages and images
  • format human readable labels for objects cited by CTS URN or CITE2 URN
  • find URNs for all documented codices
  • extract a model of a given manuscript as a sequence of CodexPage objects
  • add a menu of HMT manuscripts to a web page

Installation

The file hmt-lib.js can be downloaded from github and used locally, or loaded vis jsDelivr from https://cdn.jsdelivr.net/gh/neelsmith/hmt-lib/hmt-lib.js.

Documentation

Source

Caveats

The javascript library and the markdown documentation were written entirely by gemini-2.5-pro. The code passes a series of sanity tests, but I have not even looked at the javascript. When I encountered errors, I let gemini fix them. Use the code as you like, but be aware that I have no idea what it does or how it works.

Auditing the build:

  • github repository includes a complete transcript of the chat used to generate the script, with saved intermediate versions of the javascript library. See the repository README for details.