- Simplify the "from ztml.ztml import ztml" hierarchy
- Support encoding video/audio/fonts/PDF/...
- Support encoding multiple media elements
- Provide an easy way to view and edit output HTML in Colab
- Make into a PIP library and start doing versioning
- JS library?
- Expose more parameters and allow skipping steps in ztml() / CLI / Colab, possibly via config file
- Stand-alone online web GUI
- Stand-alone executable (+ script to build it)
-
Ablation benchmarks
-
Launch a challenge for smaller decoders
-
Auto-caps should use modifiers for next letter/word/sentence/paragraph or block-level, over simple mode instead of falling back to raw. See e.g. Grabowski, Batista&Alexandre
-
Dictionary compression for large texts + add references
-
Fast Huffman one-shift decoder, and follow-up works: Gagie et al., Grabowski&Koppl
-
Consider Roadroller entropy coder
-
Improve JS MTF decoding times for large files
-
Automatic optimizing over MTF variants
-
Benchmark alternatives to MTF + add references
-
Investigate effect of PNG aspect ratio on compression / optimize over it
-
Investigate Safari canvas size limits
-
Use 8/24-bit to overcome canvas size limits when necessary (will not work on Safari, unless we go WebGL)
-
Compress metadata into PNG
-
Compress the JS itself and use eval, considering also JS packing e.g. JSCrush, JS Crusher, RegPack, Roadroller
-
Strip whitespace from code lines not part of multi-line content strings (see e.g. above JS packers and closure-compiler, jsmin, miniMinifier, Terser, UglifyJS)
- Running full tests take too long
- Linux installation instructions / Enable validation in Colab
- Validation testing for Safari (consider Playwright to test WebKit)
- Fix slow rendering with Selenium in validation
- Tests for text_prep.py: normalize, caps, the
- Automatic testing on GitHub