{"_id":"@craftzdog/asciiquarium","_rev":"2-35c2df95e2d91d7ad79d59c6cabeef29","name":"@craftzdog/asciiquarium","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.1":{"name":"@craftzdog/asciiquarium","version":"1.0.1","keywords":[],"author":{"name":"Takuya Matsuyama","email":"hi+claude@craftz.dog"},"license":"GPL-2.0-or-later","_id":"@craftzdog/asciiquarium@1.0.1","maintainers":[{"name":"craftzdog","email":"hi@craftz.dog"}],"contributors":[{"name":"Kirk Baucom","email":"kbaucom@schizoid.com"}],"homepage":"https://github.com/craftzdog/asciiquarium-js#readme","bugs":{"url":"https://github.com/craftzdog/asciiquarium-js/issues"},"dist":{"shasum":"74d7f2c225b0ff2134b2b67aa26464d7191faae9","tarball":"https://registry.npmjs.org/@craftzdog/asciiquarium/-/asciiquarium-1.0.1.tgz","fileCount":27,"integrity":"sha512-i8NNMCiciv61V8jCcCFBKFnzIV3vBVsklLjAN9yNqAETCfzIdDxZibYfn6o4DUvxr/Y3esNdwM6o50nd9sSVIg==","signatures":[{"sig":"MEUCIEziZxDg6xiqJ9Rxb+mNS1nYn77pPn55UXIlmu6wi0yVAiEAwSJJuVRCjCn/HJ6uyf89H2DBBWHiQPTe77506lnrQ1Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4759491},"main":"asciiquarium.js","type":"commonjs","gitHead":"26c863ecff3922bc80f538258eb959810e601293","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"craftzdog","email":"hi@craftz.dog"},"repository":{"url":"git+https://github.com/craftzdog/asciiquarium-js.git","type":"git"},"_npmVersion":"11.17.0","description":"Enjoy the mysteries of the sea from the safety of your own terminal","directories":{},"_nodeVersion":"26.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/asciiquarium_1.0.1_1783298884009_0.798746355487614","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@craftzdog/asciiquarium","version":"1.0.2","description":"Enjoy the mysteries of the sea from the safety of your own terminal","main":"asciiquarium.js","bin":{"asciiquarium":"asciiquarium.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/craftzdog/asciiquarium-js.git"},"keywords":[],"author":{"name":"Takuya Matsuyama","email":"hi+claude@craftz.dog"},"contributors":[{"name":"Kirk Baucom","email":"kbaucom@schizoid.com"}],"license":"GPL-2.0-or-later","type":"commonjs","bugs":{"url":"https://github.com/craftzdog/asciiquarium-js/issues"},"homepage":"https://github.com/craftzdog/asciiquarium-js#readme","gitHead":"0c27142557a1a0716dcb7ba2dd53da2b66db21af","_id":"@craftzdog/asciiquarium@1.0.2","_nodeVersion":"26.4.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-AoRwIW4DerBlMlv8aYd0tTtqzE9o4rv0s7zgj9WYf4I6G/PMrJPnKT5nwRpK1fYReWYvfwjX4IwyiTkJ6OEGKA==","shasum":"86d3ec78d278dc244cfa4cf51e9e26cb980d797f","tarball":"https://registry.npmjs.org/@craftzdog/asciiquarium/-/asciiquarium-1.0.2.tgz","fileCount":27,"unpackedSize":4759547,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID9dUYlIxCSu9E/8ZGaSotuCPU9D4KWmnykOl2ab89AaAiEA6nLmC25ZN/5QFAEHrUaYoy8KiYP8+e8AuqUZDof+bUk="}]},"_npmUser":{"name":"craftzdog","email":"hi@craftz.dog"},"directories":{},"maintainers":[{"name":"craftzdog","email":"hi@craftz.dog"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/asciiquarium_1.0.2_1783338806918_0.6507079324073624"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-06T00:48:03.887Z","modified":"2026-07-06T11:53:27.318Z","1.0.1":"2026-07-06T00:48:04.253Z","1.0.2":"2026-07-06T11:53:27.192Z"},"bugs":{"url":"https://github.com/craftzdog/asciiquarium-js/issues"},"author":{"name":"Takuya Matsuyama","email":"hi+claude@craftz.dog"},"license":"GPL-2.0-or-later","homepage":"https://github.com/craftzdog/asciiquarium-js#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/craftzdog/asciiquarium-js.git"},"description":"Enjoy the mysteries of the sea from the safety of your own terminal","contributors":[{"name":"Kirk Baucom","email":"kbaucom@schizoid.com"}],"maintainers":[{"name":"craftzdog","email":"hi@craftz.dog"}],"readme":"# Asciiquarium (Node.js)\n\n![screenshot](./docs/screenshot.png)\n\nEnjoy the mysteries of the sea from the safety of your own terminal.\n\nThis is a Node.js port of [Kirk Baucom's original Perl\n`asciiquarium`](http://www.robobunny.com/projects/asciiquarium/) (v1.1), with\nnew fish species backported from the Android live wallpaper by Claudio\nMatsuoka.\n\n## What's different from the Perl original\n\n- Rewritten in plain JavaScript for Node — **zero dependencies** (no\n  `Term::Animation`, no `Curses`). Renders via raw ANSI escapes, so it runs\n  anywhere Node does, including Windows terminals.\n- Press <kbd>j</kbd> to drop a fishhook on demand.\n- Press <kbd>s</kbd> to summon a shark.\n- Press <kbd>a</kbd> to add a fish.\n- Handles terminal `resize` by rebuilding the world.\n\nMost of the ASCII art is by Joan Stark; the rest is from the original\nasciiquarium sources.\n\n## Requirements\n\n- Node.js ≥ 14\n\n## Install\n\n```sh\nnpm install -g @craftzdog/asciiquarium\n```\n\nOr run from a clone:\n\n```sh\ngit clone https://github.com/craftzdog/asciiquarium-js.git\ncd asciiquarium-js\n./asciiquarium.js\n```\n\n## Usage\n\n```sh\nasciiquarium\n```\n\n### Controls\n\n| Key          | Action                        |\n| ------------ | ----------------------------- |\n| <kbd>q</kbd> | quit                          |\n| <kbd>r</kbd> | redraw (rebuild all entities) |\n| <kbd>p</kbd> | toggle pause                  |\n| <kbd>j</kbd> | drop a fishhook               |\n| <kbd>s</kbd> | summon a shark                |\n| <kbd>a</kbd> | add a fish                    |\n\n### Command-line arguments\n\n- `-c` — \"classic\" mode (accepted for compatibility; visually identical to\n  default in this port, which currently ships only the classic fish set).\n\n## License\n\nGPL-2.0-or-later — same as the original Perl asciiquarium. See `LICENSE`.\n\n## Credits\n\n- Original Perl `asciiquarium`: **Kirk Baucom** &lt;kbaucom@schizoid.com&gt;\n- New fish species and improvements: **Claudio Matsuoka**\n- ASCII art: **Joan Stark** (and original asciiquarium contributors)\n- Node.js port: **Takuya Matsuyama**\n","readmeFilename":"README.md"}