Current structure uses keys like "headword" and "alternativeForms". Repeat those over 40 000 times in json and the file is simply much larger than it could be.
Use variant of json src that has short keys like a, b, c ,d etc.
Keep mapping of those fields to "proper" ones in src. Eg. 'a': 'headword'
When using json.parse, use custom formatter to swap keys to "proper" ones
Might cause minor overhead in parsing, but might literally save megabytes in file size of the library.