{"_id":"@amansingh-afk/milli","_rev":"7-ed7232fdd443fca07d5983d2f31e12c2","name":"@amansingh-afk/milli","dist-tags":{"latest":"0.1.1"},"versions":{"0.0.1":{"name":"@amansingh-afk/milli","version":"0.0.1","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","_id":"@amansingh-afk/milli@0.0.1","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"bin":{"milli":"dist/bin/milli.js"},"dist":{"shasum":"9d52c52c2423a5b5879daabedf23c7132d27c1fa","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.0.1.tgz","fileCount":71,"integrity":"sha512-Bqd+G/zhBrDQimhGwjtqZ3Kgp7Y5Uuh6BLtCm9xUhNUCiAdlCqM1jfILNK1cvy/c7ekHow+zgWTSvuG1fGI+8Q==","signatures":[{"sig":"MEUCIHARE11WEa9u87BpBkymnHC+wk6Tplt5bzWvWv52Aq5tAiEAgOZUHIwRNGbwEa762cMbwrgAqWDQ8CiACG1mqbnLi+E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186308},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"}},"gitHead":"c7ef75dfacc3fba6abbc62f8479ebc94c4ed82b1","scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"repository":{"url":"git+https://github.com/Amansingh-afk/milli.git","type":"git"},"_npmVersion":"11.6.2","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video. CLI.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"pako":"^2.1.0","sharp":"^0.33.5","commander":"^12.1.0","gifuct-js":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.9.0","@types/pako":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/milli_0.0.1_1777043121256_0.9574346510702132","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@amansingh-afk/milli","version":"0.0.2","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","_id":"@amansingh-afk/milli@0.0.2","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"bin":{"milli":"dist/bin/milli.js"},"dist":{"shasum":"11e850c9cd4ed568aabe599609dd23fea8eb1f8e","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.0.2.tgz","fileCount":72,"integrity":"sha512-PdtnkuCfwGLCUKNniUwGnNrGIFapWwfpFuuUvUFv5p2hnEOigreDY8ofLRTpDAIIw59/6oAvoiiR1uc3y7pbhg==","signatures":[{"sig":"MEUCIBf/HzmOSEEViszh4w1k6JUsWXXi6vSh5jLI7CM0y4bMAiEApILnP7pUbYP5aEIkdPGehXhqxJP36G+lDxicHjhEtS8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196004},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"}},"gitHead":"a0566e9858c0cb5bf085245fa8090e1627ee1652","scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"repository":{"url":"git+https://github.com/Amansingh-afk/milli.git","type":"git"},"_npmVersion":"11.6.2","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video. CLI.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"pako":"^2.1.0","sharp":"^0.33.5","commander":"^12.1.0","gifuct-js":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.9.0","@types/pako":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/milli_0.0.2_1777046088925_0.5779803951937112","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@amansingh-afk/milli","version":"0.0.3","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","_id":"@amansingh-afk/milli@0.0.3","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"bin":{"milli":"dist/bin/milli.js"},"dist":{"shasum":"583883dd0959651205865830f17445f2bc2c509c","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.0.3.tgz","fileCount":80,"integrity":"sha512-1F4cY8EPHV+u6zoi2WAAueF+jZcd3eGexO4Bd7c8GPfzZ+GHg6DTTiDhdFwM6IQzW9tnq2cawUpEqntAQlSdHg==","signatures":[{"sig":"MEQCIGTVN9ikGE7s0dOp4JA6+eA5w+0mTYedKeukfbeYUKJyAiBwjXFVEO262FqZj7hSAwm926eZG+plrBy2FnRr7LH30A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206410},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./web":{"types":"./dist/src/web.d.ts","import":"./dist/src/web.js"}},"gitHead":"36a514c486d51aa51003094eecd58320f8f68887","scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"repository":{"url":"git+https://github.com/Amansingh-afk/milli.git","type":"git"},"_npmVersion":"11.6.2","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video. CLI.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"pako":"^2.1.0","sharp":"^0.33.5","commander":"^12.1.0","gifuct-js":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.9.0","@types/pako":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/milli_0.0.3_1777086124304_0.573794471795998","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@amansingh-afk/milli","version":"0.0.4","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","_id":"@amansingh-afk/milli@0.0.4","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"bin":{"milli":"dist/bin/milli.js"},"dist":{"shasum":"846e29577e24554fe75fdd6f0d6e027a6d9795ff","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.0.4.tgz","fileCount":80,"integrity":"sha512-lPcae1Bo6ageY86X/VAayxIztjhGCTMwmGU4ZXtFX65wv7HahAy278sjszvx/PA175dQ150/xsp7Lzu5SOaabQ==","signatures":[{"sig":"MEUCIHGa/KhCguJDzMRRHjeVdX2ni74R41utNi48IX/LqEYcAiEAwolUS1S38f9INDso1gOCtqTOR81CYplKI86rrthHbb8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":207457},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./web":{"types":"./dist/src/web.d.ts","import":"./dist/src/web.js"}},"gitHead":"c20c406e15377c5ec390abc0b0a78ab4179dc212","scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"repository":{"url":"git+https://github.com/Amansingh-afk/milli.git","type":"git"},"_npmVersion":"11.6.2","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video → terminal, browser, or embedded (Go/Lua/JSON). CLI + web playground.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"pako":"^2.1.0","sharp":"^0.33.5","commander":"^12.1.0","gifuct-js":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.9.0","@types/pako":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/milli_0.0.4_1777146905372_0.30432234657822477","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@amansingh-afk/milli","version":"0.0.5","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","_id":"@amansingh-afk/milli@0.0.5","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"bin":{"milli":"dist/bin/milli.js"},"dist":{"shasum":"a87949beb4808c3b51d8d136545a7ed97484371e","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.0.5.tgz","fileCount":80,"integrity":"sha512-6R+D/J6pDu54lkSW/7GB67rgtkf+Y5TxoDG1c79En6SvRY8MPGDiNDizHLK0E9TqRmQ3iVkVoR/V/ZKt3HV1bQ==","signatures":[{"sig":"MEUCIB1y35m7XpzgSNX6RnfS8Tl2GWtT3s3y51zIMLyin899AiEA40B87To9Hu/UZ25hynYAfaJTTQreb3QaBKxOw2rIEDI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222402},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./web":{"types":"./dist/src/web.d.ts","import":"./dist/src/web.js"}},"gitHead":"4ae28b477c0207867649cc27a54ff8b4a94ab368","scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"repository":{"url":"git+https://github.com/Amansingh-afk/milli.git","type":"git"},"_npmVersion":"11.6.2","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video → terminal, browser, or embedded (Go/Lua/JSON). CLI + web playground.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"pako":"^2.1.0","sharp":"^0.33.5","commander":"^12.1.0","gifuct-js":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.9.0","@types/pako":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/milli_0.0.5_1777148300028_0.236503273364997","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@amansingh-afk/milli","version":"0.0.6","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","_id":"@amansingh-afk/milli@0.0.6","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"bin":{"milli":"dist/bin/milli.js"},"dist":{"shasum":"484f978c2c97a54239b2d9d92c508b2c6f55fed4","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.0.6.tgz","fileCount":82,"integrity":"sha512-uLFe6vIuIO0MBq+ybWLArp687Qsd3O89StOJyyBuWllEIg078EuaJnh4NQDXXO2NdcNCmd4iH9TzeuuLetUXow==","signatures":[{"sig":"MEUCIQCRyCpZ1Fx6sfgsILkBxgp8nGzI29C5d4Y/KRTdCyt3KQIgGTvErAYQ/exfYElHI8s52IYD76mp6iv6/MZGSCUa5Vg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1310008},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./web":{"types":"./dist/src/web.d.ts","import":"./dist/src/web.js"}},"gitHead":"c543861ba7b0c205b95fb497ab57798265e16c2a","scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"repository":{"url":"git+https://github.com/Amansingh-afk/milli.git","type":"git"},"_npmVersion":"11.6.2","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video → terminal, browser, or embedded (Go/Lua/JSON). CLI + web playground.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"pako":"^2.1.0","sharp":"^0.33.5","commander":"^12.1.0","gifuct-js":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.9.0","@types/pako":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/milli_0.0.6_1777228314761_0.8018980690236355","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@amansingh-afk/milli","version":"0.1.1","description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video → terminal, browser, or embedded (Go/Lua/JSON). CLI + web playground.","type":"module","bin":{"milli":"dist/bin/milli.js"},"main":"./dist/src/index.js","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./web":{"types":"./dist/src/web.d.ts","import":"./dist/src/web.js"}},"scripts":{"dev":"tsx bin/milli.ts","build":"tsc -p tsconfig.json && cp src/core/atlas.json dist/src/core/atlas.json","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"keywords":["ascii","ansi","terminal","tui","image","video","animation"],"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Amansingh-afk/milli.git"},"homepage":"https://github.com/Amansingh-afk/milli#readme","bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"dependencies":{"commander":"^12.1.0","gifuct-js":"^2.1.2","pako":"^2.1.0","sharp":"^0.33.5"},"devDependencies":{"@types/node":"^22.9.0","@types/pako":"^2.0.4","tsx":"^4.19.2","typescript":"^5.7.2"},"gitHead":"9018824dcd5ca7c652e5e3e3b165e80bb23c4478","_id":"@amansingh-afk/milli@0.1.1","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-NNzQb6oti0wnOW4nCdl30nErtoWiTvv2IaOUcLgLqhmcIjKpTXVK4zIFUlVGkOnvqgE2T2LbL3Bqfg5Wc40H3Q==","shasum":"88648535258366bb354f7ade03ec46b2a0f3c162","tarball":"https://registry.npmjs.org/@amansingh-afk/milli/-/milli-0.1.1.tgz","fileCount":98,"unpackedSize":1408240,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFAXUuonqUlWYOywSTVsBhiKmmMIjvWtGgphzwC9QdymAiEApGc+ezVURto5+2eyyH7vdm5IPjd4cPP0qexQIPGKyhA="}]},"_npmUser":{"name":"_amansingh","email":"amansingh.afk@gmail.com"},"directories":{},"maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/milli_0.1.1_1783311672545_0.9829113226432622"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-24T15:05:21.153Z","modified":"2026-07-06T04:21:12.849Z","0.0.1":"2026-04-24T15:05:21.409Z","0.0.2":"2026-04-24T15:54:49.076Z","0.0.3":"2026-04-25T03:02:04.485Z","0.0.4":"2026-04-25T19:55:05.515Z","0.0.5":"2026-04-25T20:18:20.173Z","0.0.6":"2026-04-26T18:31:54.976Z","0.1.1":"2026-07-06T04:21:12.730Z"},"bugs":{"url":"https://github.com/Amansingh-afk/milli/issues"},"author":{"name":"Amansingh","email":"amansingh.afk@gmail.com"},"license":"MIT","homepage":"https://github.com/Amansingh-afk/milli#readme","keywords":["ascii","ansi","terminal","tui","image","video","animation"],"repository":{"type":"git","url":"git+https://github.com/Amansingh-afk/milli.git"},"description":"Pixel-perfect animated ASCII art engine. Images, GIFs, video → terminal, browser, or embedded (Go/Lua/JSON). CLI + web playground.","maintainers":[{"name":"_amansingh","email":"amansingh.afk@gmail.com"}],"readme":"# milli\n\nPixel-perfect animated ASCII art. Images, GIFs, video frames — in your terminal, in the [browser playground](https://milli-five.vercel.app/), or baked into Go / Lua / JSON for embedding in TUIs and Neovim dashboards.\n\n![demo](demo.gif)\n\n[![Try in Browser](https://img.shields.io/badge/▸_try_in_browser-00ffe1?style=for-the-badge&labelColor=000000)](https://milli-five.vercel.app/)\n[![npm](https://img.shields.io/npm/v/@amansingh-afk/milli?style=for-the-badge&color=cb3837&labelColor=000000&label=npm)](https://www.npmjs.com/package/@amansingh-afk/milli)\n[![GitHub stars](https://img.shields.io/github/stars/Amansingh-afk/milli?style=for-the-badge&logo=github&color=181717&labelColor=000000)](https://github.com/Amansingh-afk/milli)\n[![License](https://img.shields.io/github/license/Amansingh-afk/milli?style=for-the-badge&labelColor=000000)](./LICENSE)\n\n> No install. Drop an image or GIF into the [web playground](https://milli-five.vercel.app/) and grab the ASCII / `.milli` / Go / Lua / JSON output instantly. Same engine as the CLI, all browser-side.\n\n## Install\n\n```bash\nnpm install -g @amansingh-afk/milli\n```\n\nOr one-shot without install:\n\n```bash\nnpx @amansingh-afk/milli image pic.png\n```\n\nRequires Node 18+ and a terminal with truecolor (`COLORTERM=truecolor`). Most modern terminals qualify.\n\n## Quick start\n\n```bash\n# zero-friction: bundled samples ship with the npm package\nmilli play fire\nmilli fastfetch jellyfish --no-bg        # animated logo + fastfetch info, single command\n\n# animate ANY text — no image needed (fire|glitch|wave|matrix|dissolve|typewriter|pulse|rainbow)\nmilli text \"MILLI\" -e fire\nmilli text \"SYSTEM ONLINE\" -e glitch -c \"#ff0044\"\n\n# real-time procedural shaders (plasma|rain|doomfire|starfield|tunnel|waves)\nmilli shader rain                        # fullscreen matrix rain, Ctrl+C to exit\nmilli shader plasma --hue 280\n\n# render any image to ASCII\nmilli image pic.png\n\n# animated GIF in the terminal\nmilli play anim.gif\n\n# bake a GIF into a fast-loading .milli file (no sharp at playback time)\nmilli convert anim.gif anim.milli\nmilli play anim.milli\n\n# export frames as Lua for Neovim dashboards (use with milli.nvim)\nmilli export anim.gif ./out -t lua -w 60 --no-bg\n\n# export frames as Go for Bubbletea splashes\nmilli export anim.gif ./out -t go -p bootsplash -w 50\n\n# bake a text effect or shader for any target (lua/go/json/.milli)\nmilli text \"NEOVIM\" -e matrix -o ./out -t lua\nmilli shader doomfire -w 50 -h 14 -o ./out -t milli\n```\n\n`milli fastfetch jellyfish` — bundled animation in fastfetch's logo column, info on the right:\n\n![fastfetch-jellyfish](https://raw.githubusercontent.com/Amansingh-afk/milli/media/fastfetch-jellyfish.gif)\n\n## Documentation\n\n| Doc                                | What's in it                                                                                       |\n| ---------------------------------- | -------------------------------------------------------------------------------------------------- |\n| **[CLI reference](./docs/cli.md)** | All commands (`image` / `play` / `convert` / `export`), flags, render modes, export targets       |\n| **[Recipes](./docs/recipes.md)**   | Neovim splash, terminal screensaver, shell MOTD, tmux pane, React embed, Bubbletea, animated fastfetch |\n| **[Library API](./docs/api.md)**   | Programmatic API, `.milli` format spec, supported input formats                                    |\n| **[FAQ](./docs/faq.md)**           | Performance, aspect ratio, transparency, browser usage, common gotchas                             |\n\n## How it compares to chafa\n\n[chafa](https://hpjansson.org/chafa/) is the quality floor for \"image → terminal.\" milli adds:\n\n- **Procedural generation** — `milli text` (8 text effects) and `milli shader` (6 live shaders) create animation from nothing; chafa needs an input image\n- **Pre-baked format** — `.milli` for instant playback, ship with your app\n- **Source export** — Go / Lua / JSON for embedding (chafa is a binary)\n- **Programmatic API** — use as a Node library\n- **Browser bundle** — decode + render `.milli` in React, no Node deps\n- **Neovim integration** — first-party dashboard plugin\n- **Truecolor glyph matching** — match mode uses per-glyph MSE, not just dominant color per cell\n\nIf you want a one-shot terminal render and chafa is installed — chafa is great. If you want to embed ASCII animation in your product (TUI splash, nvim dashboard, animated fastfetch, dashboard widget), milli is built for that.\n\n## Non-goals\n\n- **Not a terminal image protocol.** Sixel, kitty, iTerm2 inline images draw pixels. milli draws glyphs.\n- **Not a TUI framework.** Use ink / blessed / bubbletea / ratatui. milli is a widget.\n- **No streaming / webcam.** Offline clips only.\n\n## License\n\nMIT.\n","readmeFilename":"README.md"}