{"_id":"unicode-animations","_rev":"12-2125ec2943b9580e581ad74e59a56124","name":"unicode-animations","dist-tags":{"latest":"1.0.3"},"versions":{"0.1.0":{"name":"unicode-animations","version":"0.1.0","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.1.0","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"dist":{"shasum":"5d111df6c188febafd909af7fbdf49ae7a9c8ae0","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.1.0.tgz","fileCount":10,"integrity":"sha512-8H/HUOIPA/Wicf/htEquK5mg5UpPdpWixX00qp3rmFSOMK+THdlUewJooDEDm/tozDIjCp5Lz55mmnIDz96RyA==","signatures":[{"sig":"MEQCIBkH3+Hxj60vIfuGm/fahS7UjhG5oPFigL13gTEeHBTiAiAgQIOk0GJmJ+19t3JH3Svm8dwflQc2ci4AGN4fpurZtQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41462},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"47074b978a656088384b771e6777ce83dae4419e","scripts":{"build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.1.0_1771245946807_0.017004484564327127","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"unicode-animations","version":"0.1.1","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.1.1","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"dist":{"shasum":"e0dce7c6a2260ced3e52c2a4c5ac492565b97206","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.1.1.tgz","fileCount":12,"integrity":"sha512-WuRDqzWlAZOYvro9R3CrygwfPK4007D0gNCOGiwRpVK33Ig091nqAljHEjVQcWzGiGz92aYf2DKGaQHoq4JMjw==","signatures":[{"sig":"MEUCIQDYXZkTSME4NzKd439d9MQMF609j+u3AvTXNmdaeFlNSQIgeAPDvk7bVU9Je2g/gN5nnSgKgR08jDJ1YohPVhTuPsY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46954},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"2b6b89c9027d4dd6e5096b203947904b0de3642b","scripts":{"build":"tsup","postinstall":"node scripts/postinstall.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.1.1_1771246366624_0.601046617918604","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"unicode-animations","version":"0.1.2","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.1.2","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"dist":{"shasum":"7aa696dcd3979f1183422a69d8e2e4a719e967dc","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.1.2.tgz","fileCount":12,"integrity":"sha512-9c0Fk6viT26E/X+vYkVsZP2NjQ9nriCwSkw3Cb0Q+EDO7WGnBF9ZyKQE/HYk9UBXzcxz8roKkMY+jdfPRfS22g==","signatures":[{"sig":"MEQCIHhasCZEaXiwgFt6PMbfufQwH+anKzaXjXx9mtu1QD+oAiBIHDUNUyDY7xQP2JH6qQfY4t2hvM8QyXOmKtLbQ/HMWA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":47277},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"a8b66ab3e890de55ee0b7bc1617dc3b735f1772f","scripts":{"build":"tsup","postinstall":"node scripts/postinstall.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.1.2_1771246610286_0.3310465468992523","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"unicode-animations","version":"0.1.3","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.1.3","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"dist":{"shasum":"19dbd550d2af5c0b426093331ce5838b19e9e2e4","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.1.3.tgz","fileCount":12,"integrity":"sha512-NtqWki2/DFBNKdydKyMpbIFgQgHi27o0BdsUAPmogAXZxlfyAI/c2cfCfm4gDOJKkhu+e0451AXQUZFMOTnVqw==","signatures":[{"sig":"MEYCIQCEG73RNLs0M/Lp3g+Ag0yL1tSl7KdKVCmBFjUikNHZpAIhAMf2LgpwWDYAGKYwnDRdAmdsi0AuvjIPTXZhAg/dL8Ja","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":47388},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"0edc7bbb9a7e6b0c8296f41fda5454d74d7bd173","scripts":{"build":"tsup","postinstall":"node scripts/postinstall.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.1.3_1771246889037_0.9009916214122506","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"unicode-animations","version":"0.1.4","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.1.4","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"dist":{"shasum":"87fc7b00ba10b1a40a6157a7369ad30e7261f1db","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.1.4.tgz","fileCount":12,"integrity":"sha512-CJXyfQdDLYJXJ8ABgDsBuAZJn0tIQ1pLtDkdFjCap2wRtPRwMZUKmiG9IyUsJ+GUy/nQ0/oh2BcrBx9p/i36Fg==","signatures":[{"sig":"MEQCIE0Ebt8oXheTJxSp79tVLy+0n/FKN0cmMraGGXjsgh2LAiA5kBz+UexGOJW76/OHhSlgkHE6r3hHyoOqBKcC0XpoUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":47389},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"d0e40f867f742df1d4a6bcb41b4f5a7da7fdc459","scripts":{"build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.1.4_1771247063111_0.18112004298171036","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"unicode-animations","version":"0.1.9","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.1.9","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"bin":{"unicode-animations":"scripts/demo.cjs"},"dist":{"shasum":"77592e0f1f980ddd98c209370957f3f9d11d4452","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.1.9.tgz","fileCount":13,"integrity":"sha512-fKA0d0r/FewqCtJP35LxYPDixC0EZ1cRXJqkMK5w8pOFeVvR9yPeoNsdUkoE9p5FZSUnZX09FfXGmTyNxoiZDg==","signatures":[{"sig":"MEUCIQDTnB49qzQdpPRvpa/6qUA3XqrgLuJPNJO0xdHm6nUqlgIgaqvbIK+40JNV/NspKz20VdKz4XPQcX9OfyMQ+hATwm0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53116},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"030b8cb66ca412a5491e676f63cc9067453e8537","scripts":{"build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.1.9_1771262240858_0.9768608222247566","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"unicode-animations","version":"0.2.1","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@0.2.1","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"bin":{"unicode-animations":"scripts/demo.cjs"},"dist":{"shasum":"53ec01356249567f435e08acc2fc2da19025c92c","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-0.2.1.tgz","fileCount":14,"integrity":"sha512-X+61lMEsYifyo32O4WlRDQjMlENELhdj7bfirD/2rI/ZoeuTxvYiNKhj6T1YdmXkLZzQxlDP4PX3boBC2GQl0A==","signatures":[{"sig":"MEUCICC6zTWppTdMLQz1i3L82yYe2ojXtqKw6K2rWppmGp7wAiEAqyC/EOKARN2BewgkDI9y1rZ3n580aM36yIIK02zUhqA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64721},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"99309ab0121df58e83244b8f2f9c456401c172da","scripts":{"build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_0.2.1_1771263471974_0.6097768416824085","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"unicode-animations","version":"1.0.0","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@1.0.0","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"bin":{"unicode-animations":"scripts/demo.cjs"},"dist":{"shasum":"ab98f0353599bf85f334b62c377ce7c4065b6798","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-1.0.0.tgz","fileCount":15,"integrity":"sha512-oFLVJA9BR0a7GpL/453Dr5LauiCJPJlBlpbk42uyxboF7TA3bE4SmgxyF7WSUK6lfJEEii7AS1vW5IY3TWAO4g==","signatures":[{"sig":"MEYCIQDWBpz1v3TDYK9Gr/2TJedSDwb4cF4wlcM17Rd8DxlTqgIhAMJ/4jsA54b0V+n/O3mDgtTpLVOYs+zGElQ6/x+GB1bD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82474},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"248bd1596b2c3c46ec091dbf3cac6af881d82e6d","scripts":{"test":"vitest run","build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^3.0.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_1.0.0_1771272396120_0.41684023247987523","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"unicode-animations","version":"1.0.1","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@1.0.1","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"bin":{"unicode-animations":"scripts/demo.cjs"},"dist":{"shasum":"1733878cb9070f44e1e9a4c84c8f37332b058f58","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-1.0.1.tgz","fileCount":15,"integrity":"sha512-q1bLPD0AzFikk/XUDLWjpVQBcwuu/AKo9r6m7IQbWDDji14MHKiHthdvLlb3y0PKOYxAOaU0KS5vF/TOSs92PA==","signatures":[{"sig":"MEUCIHYds8GGofmsb/jcJiBhD/YcFvtNWUXun0O4PmwEfoT3AiEA5AmzFw3DqPeOXJnNviNuDRcTWs1J45Fa1cEcqXA7QgU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82608},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"02992b71f6e86ef4cb1493a6ec0c486575d878a1","scripts":{"test":"vitest run","build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","dependencies":{"unicode-animations":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^3.0.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_1.0.1_1771272906578_0.34761448330466793","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"unicode-animations","version":"1.0.2","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@1.0.2","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"bin":{"unicode-animations":"scripts/demo.cjs"},"dist":{"shasum":"9364cc13bd34569ec245f5fa9f066b8aa9f56b49","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-1.0.2.tgz","fileCount":15,"integrity":"sha512-clwd5Try0GrpwwPHImjmafIAcFh/7aJufCpRN6Aw3AikNuIhWnuJNfvWIcEaWpFsURd4bnYcO+MNw0nvftQIeg==","signatures":[{"sig":"MEUCIQC8F/Azb2VhXn1CofYLH6eyr1BogqzAb/hxlrDH2/d2qQIgX2/AMDqXILxTMl55fqKYAnmDVZ2C9QGgHVGCNAtL204=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82708},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"38bb0bd916791dd77b70d3d0ac05219429fe8b6a","scripts":{"test":"vitest run","build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","dependencies":{"unicode-animations":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^3.0.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_1.0.2_1771274048550_0.7363537152483084","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"unicode-animations","version":"1.0.3","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"license":"MIT","_id":"unicode-animations@1.0.3","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"homepage":"https://github.com/gunnargray-dev/unicode-animations","bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"bin":{"unicode-animations":"scripts/demo.cjs"},"dist":{"shasum":"0b82e798b57eb83ec9655568b36221438cb4a247","tarball":"https://registry.npmjs.org/unicode-animations/-/unicode-animations-1.0.3.tgz","fileCount":15,"integrity":"sha512-+klB2oWwcYZjYWhwP4Pr8UZffWDFVx6jKeIahE6z0QYyM2dwDeDPyn5nevCYbyotxvtT9lh21cVURO1RX0+YMg==","signatures":[{"sig":"MEUCIQCW9opMFE+ZnSUsjIGpt8mvZOFrnKAeCaNZrgDqsDgBtwIga16JINIh2BX+rbyrfq6wI5mFZNubo+f9krWKdQpM6PQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82717},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./braille":{"import":{"types":"./dist/braille.d.ts","default":"./dist/braille.js"},"require":{"types":"./dist/braille.d.cts","default":"./dist/braille.cjs"}}},"gitHead":"8d2c988f7986c88e7ce8d8086b2444202a868617","scripts":{"test":"vitest run","build":"tsup","postinstall":"node scripts/postinstall.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"gunnargray","email":"hi@gunnargray.com"},"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"_npmVersion":"10.9.4","description":"Unicode spinner animations as raw frame data","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","dependencies":{"unicode-animations":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^3.0.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-animations_1.0.3_1771274411736_0.4757548348166676","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-02-16T12:45:46.807Z","modified":"2026-02-27T07:57:14.020Z","0.1.0":"2026-02-16T12:45:46.940Z","0.1.1":"2026-02-16T12:52:46.764Z","0.1.2":"2026-02-16T12:56:50.428Z","0.1.3":"2026-02-16T13:01:29.157Z","0.1.4":"2026-02-16T13:04:23.258Z","0.1.9":"2026-02-16T17:17:21.028Z","0.2.1":"2026-02-16T17:37:52.122Z","1.0.0":"2026-02-16T20:06:36.269Z","1.0.1":"2026-02-16T20:15:06.717Z","1.0.2":"2026-02-16T20:34:08.781Z","1.0.3":"2026-02-16T20:40:11.887Z"},"bugs":{"url":"https://github.com/gunnargray-dev/unicode-animations/issues"},"license":"MIT","homepage":"https://github.com/gunnargray-dev/unicode-animations","keywords":["braille","spinner","unicode","animation","loading","cli","terminal"],"repository":{"url":"git+https://github.com/gunnargray-dev/unicode-animations.git","type":"git"},"description":"Unicode spinner animations as raw frame data","maintainers":[{"name":"gunnargray","email":"hi@gunnargray.com"}],"readme":"# unicode-animations\n\nUnicode spinner animations as raw frame data — no dependencies, works everywhere.\n\n## Demo\n\nSee all 18 spinners animating live:\n\n```bash\nnpx unicode-animations --web     # open browser demo\nnpx unicode-animations           # cycle through all in terminal\nnpx unicode-animations helix     # preview a specific spinner\nnpx unicode-animations --list    # list all spinners\n```\n\n## Install\n\n```bash\nnpm install unicode-animations\n```\n\n## Quick start\n\n```js\n// ESM\nimport spinners from 'unicode-animations';\n\n// CJS\nconst spinners = require('unicode-animations');\n```\n\nEach spinner is a `{ frames: string[], interval: number }` object.\n\n## Examples\n\n### CLI tool — spinner during async work\n\n```js\nimport spinners from 'unicode-animations';\n\nconst { frames, interval } = spinners.braille;\nlet i = 0;\n\nconst spinner = setInterval(() => {\n  process.stdout.write(`\\r\\x1B[2K  ${frames[i++ % frames.length]} Deploying to production...`);\n}, interval);\n\nawait deploy();\n\nclearInterval(spinner);\nprocess.stdout.write('\\r\\x1B[2K  ✔ Deployed.\\n');\n```\n\n### Reusable spinner helper\n\n```js\nimport spinners from 'unicode-animations';\n\nfunction createSpinner(msg, name = 'braille') {\n  const { frames, interval } = spinners[name];\n  let i = 0, text = msg;\n  const timer = setInterval(() => {\n    process.stdout.write(`\\r\\x1B[2K  ${frames[i++ % frames.length]} ${text}`);\n  }, interval);\n\n  return {\n    update(msg) { text = msg; },\n    stop(msg) { clearInterval(timer); process.stdout.write(`\\r\\x1B[2K  ✔ ${msg}\\n`); },\n  };\n}\n\nconst s = createSpinner('Connecting to database...');\nconst db = await connect();\ns.update(`Running ${migrations.length} migrations...`);\nawait db.migrate(migrations);\ns.stop('Database ready.');\n```\n\n### Multi-step pipeline\n\n```js\nimport spinners from 'unicode-animations';\n\nasync function runWithSpinner(label, fn, name = 'braille') {\n  const { frames, interval } = spinners[name];\n  let i = 0;\n  const timer = setInterval(() => {\n    process.stdout.write(`\\r\\x1B[2K  ${frames[i++ % frames.length]} ${label}`);\n  }, interval);\n  const result = await fn();\n  clearInterval(timer);\n  process.stdout.write(`\\r\\x1B[2K  ✔ ${label}\\n`);\n  return result;\n}\n\nawait runWithSpinner('Linting...', lint, 'scan');\nawait runWithSpinner('Running tests...', test, 'helix');\nawait runWithSpinner('Building...', build, 'cascade');\nawait runWithSpinner('Publishing...', publish, 'braille');\n```\n\n### React component\n\n```jsx\nimport { useState, useEffect } from 'react';\nimport spinners from 'unicode-animations';\n\nfunction Spinner({ name = 'braille', children }) {\n  const [frame, setFrame] = useState(0);\n  const s = spinners[name];\n\n  useEffect(() => {\n    const timer = setInterval(\n      () => setFrame(f => (f + 1) % s.frames.length),\n      s.interval\n    );\n    return () => clearInterval(timer);\n  }, [name]);\n\n  return <span style={{ fontFamily: 'monospace' }}>{s.frames[frame]} {children}</span>;\n}\n\n// Usage: <Spinner name=\"helix\">Generating response...</Spinner>\n```\n\n### Browser — status indicator\n\n```js\nimport spinners from 'unicode-animations';\n\nconst el = document.getElementById('status');\nconst { frames, interval } = spinners.orbit;\nlet i = 0;\n\nconst spinner = setInterval(() => {\n  el.textContent = `${frames[i++ % frames.length]} Syncing...`;\n}, interval);\n\nawait sync();\nclearInterval(spinner);\nel.textContent = '✔ Synced';\n```\n\n## All spinners\n\n### Classic braille\n\n| Name | Preview | Interval |\n|------|---------|----------|\n| `braille` | `⠋ ⠙ ⠹ ⠸ ⠼ ⠴ ⠦ ⠧ ⠇ ⠏` | 80ms |\n| `braillewave` | `⠁⠂⠄⡀` → `⠂⠄⡀⢀` | 100ms |\n| `dna` | `⠋⠉⠙⠚` → `⠉⠙⠚⠒` | 80ms |\n\n### Grid animations (braille)\n\n| Name | Frames | Interval |\n|------|--------|----------|\n| `scan` | 10 | 70ms |\n| `rain` | 12 | 100ms |\n| `scanline` | 6 | 120ms |\n| `pulse` | 5 | 180ms |\n| `snake` | 16 | 80ms |\n| `sparkle` | 6 | 150ms |\n| `cascade` | 12 | 60ms |\n| `columns` | 26 | 60ms |\n| `orbit` | 8 | 100ms |\n| `breathe` | 17 | 100ms |\n| `waverows` | 16 | 90ms |\n| `checkerboard` | 4 | 250ms |\n| `helix` | 16 | 80ms |\n| `fillsweep` | 11 | 100ms |\n| `diagswipe` | 16 | 60ms |\n\n## Custom spinners\n\nCreate your own braille spinners using the grid utilities:\n\n```js\nimport { gridToBraille, makeGrid } from 'unicode-animations';\n\n// Create a 4-row × 4-col grid\nconst grid = makeGrid(4, 4);\ngrid[0][0] = true;\ngrid[1][1] = true;\ngrid[2][2] = true;\ngrid[3][3] = true;\n\nconsole.log(gridToBraille(grid)); // diagonal braille pattern\n```\n\n`makeGrid(rows, cols)` returns a `boolean[][]`. Set cells to `true` to raise dots. `gridToBraille(grid)` converts it to a braille string (2 dot-columns per character).\n\n## API\n\n### `Spinner`\n\n```ts\ninterface Spinner {\n  readonly frames: readonly string[];\n  readonly interval: number;\n}\n```\n\n### Exports from `'unicode-animations'`\n\n| Export | Type |\n|--------|------|\n| `default` / `spinners` | `Record<BrailleSpinnerName, Spinner>` |\n| `gridToBraille(grid)` | `(boolean[][]) => string` |\n| `makeGrid(rows, cols)` | `(number, number) => boolean[][]` |\n| `Spinner` | TypeScript interface |\n| `BrailleSpinnerName` | Union type of all 18 spinner names |\n\n### Exports from `'unicode-animations/braille'`\n\nSame as above — the main entrypoint re-exports everything from the braille module.\n\n## License\n\nMIT\n","readmeFilename":"README.md","users":{"joewinke":true}}