This library ports bas3line/ascii (ascii.rest), MIT licensed, © bas3line.

Repositoryhttps://github.com/bas3line/ascii
Commitfcb644403bfc25af0002e415d1006dd10b99ca34
Commit date2026-10-07T23:40:31+05:30
Subjectfixes: rows on android, a play button under reduced motion, faster scenes on phones (#11)
Pieces191

The same commit is Ascii.upstream_commit/0, and every golden fixture records the commit it was generated from.

Regenerating the fixtures

The goldens in test/fixtures/golden/ and test/fixtures/js_math.json are generated from upstream with Node. mix test never needs Node.

git clone https://github.com/bas3line/ascii tmp/upstream
git -C tmp/upstream checkout fcb644403bfc25af0002e415d1006dd10b99ca34
NODE=/path/to/x64/node mix ascii.golden

Use an x64 build of Node 22.18 or later (on Apple silicon, the darwin-x64 build runs under Rosetta). arm64 builds of V8 fuse multiply-adds inside Math.sin, Math.log and friends, which changes their last bit; see PORTING.md. The fixtures in this repository were made with Node v22.21.1 darwin-x64.

To move to a newer upstream: check out the new commit in tmp/upstream, update the commit here and in lib/ascii.ex, regenerate, and run mix test. Every piece whose frames changed fails its golden test.