{"_id":"loopwind","_rev":"52-b43cdadc7963ee0d00722da6bf12114d","name":"loopwind","dist-tags":{"latest":"0.25.11"},"versions":{"0.9.1":{"name":"loopwind","version":"0.9.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.9.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"64505c7b738ce99d5f13a0d809bffa2107eb0826","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.9.1.tgz","fileCount":245,"integrity":"sha512-vPK3ZSsLHNbDhZfY5bspMZVw53SnabXwYHIFteHOP3uMkj/VDsYcidnF3cgflH2T+Muz1rqd+CoHYFrVEb8zLQ==","signatures":[{"sig":"MEQCIHBjH2j1PbulGUXHlGHiH56NAY0LCIikWvb1F3YJ7kmsAiAXnqtmpFW2SiPf6CQRqp6s5GQ8qgDmm8JTX66lhBdZaQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1428424},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"1bc180aa2a9a278b2dc90ef88cbf6ec23b466920","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.9.1_1763469350421_0.13368123556299194","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"loopwind","version":"0.9.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.9.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"8b6fbbd0d386ed856e2127206e360c2b31fdec17","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.9.2.tgz","fileCount":245,"integrity":"sha512-XbQkfyy0p/y/5N9ar7B+LAsyFMHkPgmQArbEV3wpnxhsfchBfthFz9abv3JP1CKIvyxD3Kwnj9dz4zEJQ9sPFg==","signatures":[{"sig":"MEQCIHEuTFVASTtdybSxaW2XIzHqRTlnOjMmfq2Y4Jhpw8/EAiB++kVfq8scyc7LYWoOTqA8PnDaJqaCwAXjncZ0HitAcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1428685},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"1bc180aa2a9a278b2dc90ef88cbf6ec23b466920","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.9.2_1763470159213_0.3042464305739405","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"loopwind","version":"0.9.3","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.9.3","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"c638345f447ac7001451f8f34e5209c63b2ffa77","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.9.3.tgz","fileCount":165,"integrity":"sha512-h98W9iVF2Lw5b4YQPoHqSki+WzY+kz5f3mqZhS0aqtmVzXMH34KBB0OMdSXynQ3MvTF3MpnpSqCZwoivn5vffQ==","signatures":[{"sig":"MEUCIQDrM0onp1/hprruVRS4z+vh4b//X6FqkVgGO9iPmTdjIgIgQqf287XRwr6HbDN2dAiyg0uQ49520ikK+D+41n/bDTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1245080},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"be1fbbc0ae60cc0343972d27addafe0cc4043fae","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.9.3_1763470786100_0.5012298763066261","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"loopwind","version":"0.10.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.10.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"1288c41cec8724ee9091d2cb481034ad0f6ea89b","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.10.0.tgz","fileCount":154,"integrity":"sha512-UeCXROd8wDeTwRh+zghEeDRVTocnWVU1r+d75zW9Lh5KpTOWMyTw/vvpFJi7u4j8/qQHzGpMEFQbLSHzd+WEsg==","signatures":[{"sig":"MEQCICR1yzyegPnPivkl/bmj5VDzN1JA+rEKNtay5hyeRRAGAiB/0Qe0DJ3FNDBC02WHXOEirVMYkOjvNYraKkTWTRdQHw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1250433},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"76ffac4b302187403ecf3767ef9d1af6f77c9930","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.10.0_1763472973614_0.34548181467131744","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"loopwind","version":"0.10.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.10.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"0cbb95df408c91204d881e0bdbb9112fc4fe595d","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.10.1.tgz","fileCount":154,"integrity":"sha512-Qjyope+osAt39EhhC4DMc3vF/ARW6QmWOxr/itf3M32DrcegTE/l6ulyb7TpSbvhrPQUbQYWwq3S4Qa8WIuJvA==","signatures":[{"sig":"MEUCICEAcLMxfZch6AI5wsbpTHEz48kKwvPAQJtL19qcVpAdAiEArOtOLzyjwOfH2epVWNhSYiE+nsY124eS3TJmGARHzGs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1253638},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"76ffac4b302187403ecf3767ef9d1af6f77c9930","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.10.1_1763473272922_0.3086684097795729","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"loopwind","version":"0.10.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.10.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"59a9903aa7781e59046cdd45bf571882ae1ed897","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.10.2.tgz","fileCount":154,"integrity":"sha512-xjSCwFNvAH6BArfBEcRFNbW/lJERnslREJZ8g4ozrj0yEkg+8XdyRHaLaNaa+6ATCblNd0RgwMSh39XAWvYoQQ==","signatures":[{"sig":"MEUCIQD1Ze8CA97S/zwSBxULbFp+jupVHUVFkW52JIV2zvLQVQIgXfipiMxeRYA0thUSkX57xdJI8N8kSpnn79cMqak1gJc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1254664},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"76ffac4b302187403ecf3767ef9d1af6f77c9930","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.10.2_1763473555681_0.5494592121248421","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"loopwind","version":"0.10.3","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.10.3","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"6e6a47425ff283bff729074224d065824efc84d1","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.10.3.tgz","fileCount":154,"integrity":"sha512-fdqYK2F7qVCnMKV/g37E6WAmVSCvqa5vuT227YT382KM+eFJbM2GT6y9ltNcMB1J4YQcqFAuAuDeK6QhrAtLCw==","signatures":[{"sig":"MEUCIEqhJtXLoj7V3Kyou6pJpHWYundENEDFPzBrZWKk9BbOAiEAxYvZl/n3HVxCzyFRI3y2wRNbEUgc7QCYBwXRcOkJKoM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1256804},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"76ffac4b302187403ecf3767ef9d1af6f77c9930","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","patch-package":"^8.0.1","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.10.3_1763473640898_0.18566908112255098","host":"s3://npm-registry-packages-npm-production"}},"0.10.4":{"name":"loopwind","version":"0.10.4","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.10.4","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"8905958b84a228fb4f080144c76ba64014b9c876","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.10.4.tgz","fileCount":161,"integrity":"sha512-wFCzcSyt2ffNcqlgbNrapOkwXwLwWDXwDNIjVu2mxkvSD8Mioljf0+HtNYW02W5zbXkPmUXMIn6PFpmOrr1dUQ==","signatures":[{"sig":"MEUCIEjq+eLkBD/zXTXE02sfViI5/B0aEq7Sh5OcDWZoI32CAiEAk2JJQj/Zyx++OcsyYZmqDIgwkpJbqdEhzNbq08NVhZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1635034},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"05807f771ca896fb50752393f4d260eb3715000e","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.10.4_1763475408902_0.5223596963545509","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"loopwind","version":"0.11.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.11.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"9121dce9b8c518725cf1e4fe2a1359c43ea57dbc","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.11.0.tgz","fileCount":161,"integrity":"sha512-/W0vdIFu8P8573Mi+rue+pvkCAhxuG+an4pEpLMDKAmr3vgsGty7l2BtkgGCMB14XJsgtzOwy6I4ogdep9STLQ==","signatures":[{"sig":"MEYCIQD/CAyuCNhr2nuvbf85rmsvlmsjLLWjkt+qcyB0ABS+FwIhAKz+50ZstCjTDZlhrh6NQXFlWDCIkJeS7G/bBsjYezSn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1636130},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"ea7ffa302943f86e31197933600671663bb60045","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.11.0_1763487127443_0.5644717717365062","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"loopwind","version":"0.12.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.12.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"a4e4a159738d440bb2cc33d49478760576c00aa6","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.12.0.tgz","fileCount":161,"integrity":"sha512-4+s7LRGVvOP6K1rmy8Tu1f599VxcrA8FBBeY8gKn1WpG74+RDDzMTxMoDY1htDybhTnphcstBo0Wx3Q5Lg2jvA==","signatures":[{"sig":"MEYCIQD1L8iqzNY59ZioTbpaIgqAsSKVU7W0o3zG+5M9A8YKLwIhANCx3XiTMvKitqKc18Tk/L9lL94gP28ISI87WQfImV+9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1646402},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"3792c16a89a5eb3dcaea822d2f884f478cdb7ecb","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.12.0_1763501267273_0.49346327400309065","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"loopwind","version":"0.12.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.12.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"213c5cd2c08920a02afeb1a0036811349cfc682f","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.12.1.tgz","fileCount":161,"integrity":"sha512-U4ABuMy4o6jpuP88dbwPm8eca7A3xWT+JYVwNwDnxNlOsTzQj329xY3u2AEEB5W343rX1KeEnGI11+vkbqFb2g==","signatures":[{"sig":"MEQCIEoAl0STIq0tMXL3ibsoD5+EfHqeTW+b/ptsr0gwyJXEAiAnP1ACT2Gn0hAbrWbZbtcAKQJIS6TXUXwlQocsXJzryg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1649320},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"6afea4b26b6c11879586e19444ec76c0e636e838","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.12.1_1763501541640_0.34642584135678844","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"loopwind","version":"0.12.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.12.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"66f7a7b8130c001f8d3d903a4ff58f0b62b03429","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.12.2.tgz","fileCount":155,"integrity":"sha512-bzVwQ+67zqc5GHo6oARt9o17EmEsnFDEVkCDKBtSrRU/1B3k3Zje8dxSMriXag/a9tvXl1lRXmljAOVEZBDLnw==","signatures":[{"sig":"MEUCIEJbi6AkIKcrR4dL3gH+I7czied39nSDDvLUoBo2KvRtAiEA18Qm0RChT/PoPV6/Sdi996DPPCyeQGzOJVkpCfp81ro=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1612834},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"4b00c70ac70a431388216b35987e2670c55f9dee","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.12.2_1763503444377_0.7248157849837671","host":"s3://npm-registry-packages-npm-production"}},"0.12.3":{"name":"loopwind","version":"0.12.3","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.12.3","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"24a775c810de56a3f475415576e360fd53a0ff00","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.12.3.tgz","fileCount":155,"integrity":"sha512-LCg2Ilqlpt+urDJp2tiEL+lezvgQO5hRd3fMIGx7g7oiO0YCTOVPea4lvh2fB1HYx6yJwTr3ynK6bB5pr/SFeQ==","signatures":[{"sig":"MEYCIQCjkLFXaiXT6zH6tMDP44SKTLhbm/S5c839aOWPmrtZ4QIhAJxE7HvAzlr7TqaAFCssLLTfdNQJmgDhGdomHsSzvZoQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1614052},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"088669dc79b040e618a500e4e2a0ef2034d68ab2","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.12.3_1763503879058_0.2204915496763602","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"loopwind","version":"0.13.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.13.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"1326d3dd9ced70feb3160ad444d4b3fce205d2fc","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.13.0.tgz","fileCount":169,"integrity":"sha512-OtyDwl/sEkkTnx9WIM6m5K4gyXZVwkcbWyjRO8zHAFsvbogtXvf5Il5KMEkHoXRfvN77l7SfLfej7mB0xQR0XQ==","signatures":[{"sig":"MEUCIQC5ocGxFDMIlUkitgrlzcTRcSMUuPXQ4S89HV+J2ySupgIgCKl+o/VaOCfHfLs6IPaQ/TN54uCMQKLCOC9mCf1n6V8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1715583},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"c42d44f7346e446b969596210eb81346ed91c3a1","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.13.0_1763547219966_0.618985419789329","host":"s3://npm-registry-packages-npm-production"}},"0.13.1":{"name":"loopwind","version":"0.13.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.13.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"dd9a187112fd5c5739da54d028955be9b90eabaf","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.13.1.tgz","fileCount":169,"integrity":"sha512-7XMTooOdDjkyGPTbwN+03UtQXk2hKObGbpyJGPbsOs23jOYQoWnDsByjJ2puFvieoB+l5JDNmbzIyZn3u+4+0g==","signatures":[{"sig":"MEUCIGyO413AYbFwC+iIP6SAMtYHHhdxW9R80Us0/hJLBR4+AiEAtfMe8kKRCI3Cqts0qsPGZXVQcpoSgJK+VWJfS2UpJdQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1718158},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"57561514eb4d0caefa3d460b7ac8ab6ddd504aa6","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.13.1_1763547627980_0.8412850077691707","host":"s3://npm-registry-packages-npm-production"}},"0.13.2":{"name":"loopwind","version":"0.13.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.13.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"e0eea11becfae92680ebff49d1fa3713efaccc10","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.13.2.tgz","fileCount":169,"integrity":"sha512-arC2WFYsu9/VcHIRe2xVi26YvyrGRTk7WXSZraJsd63z/Ek7pYI0ZxWhfKs1jg+zfeS1h+ObnAd2dyx+h7JZZQ==","signatures":[{"sig":"MEUCIAfwMcnKn8eOtox2QQ7441CprchELR0ShPoDj6AzeHjBAiEAggRyMn1ZB9Y8esMYT/o30y9fZWukdsIw9Qt9DGX1vgw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1718220},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"e1f4f6fce6212c8b91d7d1314657292efd4cfbbd","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.13.2_1763551143553_0.32616707272489043","host":"s3://npm-registry-packages-npm-production"}},"0.13.3":{"name":"loopwind","version":"0.13.3","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.13.3","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"76cfbade22594f1288cb6558b489e1510e3d393f","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.13.3.tgz","fileCount":169,"integrity":"sha512-p8rn6kNAkcShR7BPNK04Gaccc/hn1Mve01KHdomlJeWkpYEASaqKv8UahvX9lWAP2aRMcmtxhu6k4ZOM0LpvsQ==","signatures":[{"sig":"MEUCIGSEsJvC9BmLDaSmuDZBAW6B9SoGrxPDBu6dFhS4TfDxAiEAlJVaK2GR5UFPC24reeRi7pUpBLJTVncstinhi3OAbi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1720915},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"2f79404bfadcb502812c900371e6e8eaa87bda3d","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.13.3_1763555188694_0.28574949360005","host":"s3://npm-registry-packages-npm-production"}},"0.13.4":{"name":"loopwind","version":"0.13.4","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.13.4","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"95fa386b39578caf7987a85a0520f095be847b63","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.13.4.tgz","fileCount":169,"integrity":"sha512-eKrcaayq6cNkKfUXa/ifF0kGfO5smrpy7aLil5OghLBQVJU9TwoMa0smIxkqYk2Un8I7e+e1ip2Ev84Uk94MUg==","signatures":[{"sig":"MEYCIQDaikSCxwaQWY6uXz0jFJyErlPoLL4ShGg1JgLQmzEongIhALW4wyIjAc96pI3sHRRcGKMOrbzCrd/2giWPmtJQL2lY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1721999},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"75b2d20b4acc818b04fd142514f5377677b824ed","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-templates","postinstall":"patch-package","copy-templates":"cp -r src/default-templates dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.13.4_1763555976420_0.8516004835373061","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"loopwind","version":"0.14.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.14.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"88f3ae882f9eaefc21afe67e5921b1b4eef71c69","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.14.0.tgz","fileCount":171,"integrity":"sha512-B66pJYUMuekUlZhddDGweYYl5sexXJkfJ8mUKsHPmZpmGUxcNS7j8M0kTG1sqrIl7DW78+9tWO4O1036ZwEHWA==","signatures":[{"sig":"MEUCIECTBOScmvdBg8+m4BQydVTQPtaaYSZ8FcNjHbXcTPK6AiEA0OltdLLYlX8yJXT/SxreV/mhziQ/npW3lMSGNS/JRLE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1806439},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"ddffe5c17e88e4409470019668ee9ef32efab855","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.14.0_1763581473777_0.12788658656050322","host":"s3://npm-registry-packages-npm-production"}},"0.14.1":{"name":"loopwind","version":"0.14.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.14.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"7d06026352d290053d6373b52397f34093061efb","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.14.1.tgz","fileCount":171,"integrity":"sha512-aeYkJj3HUrh81ALt5YX0s85JQxLvrKpiFK641VkwEmmtAlhhqP30VsP85z5EdpVswR5l4qtCMTxnV20bOjp8XQ==","signatures":[{"sig":"MEQCIHi76400SfRVni6f42jMIIAxKIsV5uxrAjgB2F3T9NXXAiBc/9tBiDnIEg4BvmLSlpVgJhq87ATqXpNYyhW8bdVCIw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1808525},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"7709a53d7ba358afe4d10f30b5faacf1d356a76c","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.14.1_1763582093566_0.15572245348406843","host":"s3://npm-registry-packages-npm-production"}},"0.14.2":{"name":"loopwind","version":"0.14.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.14.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"1b68b61e191270f14e5accabd4ab359fcc209a87","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.14.2.tgz","fileCount":171,"integrity":"sha512-AsM6c7xUhS+fIM8+ySjblAUnurUnCmrGUklU19OrqveLQQHJnujvS056u5W98T2BL2iHiiKevKHw7rTllZasUA==","signatures":[{"sig":"MEYCIQC91ZWZmonarvmQ5rVfi19HN5zfZewNAR9Q/o0qu0IpdgIhAMOkyqbqeWWUA9tgQMMR2+YtE3ZA7t2YExchyF5/x7Op","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1809692},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"e09b69fbd079ae8bef726301b05f3a80503a4b24","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.14.2_1763582738851_0.5240039156917953","host":"s3://npm-registry-packages-npm-production"}},"0.14.3":{"name":"loopwind","version":"0.14.3","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.14.3","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"b066ed24e40c25877fd87969961e83d82a0ac058","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.14.3.tgz","fileCount":171,"integrity":"sha512-oVJ2eS2OoH2pRY+LibVaC/+fCIYQrUILjiMHUympMsSxrxnLmcV8lk+z+mfXcwDkmJ93d982g9Ha4YA+Z5KJXQ==","signatures":[{"sig":"MEYCIQDeoOhlOIY8ENl5mkcnh3ZRFfqfrZgoyJBH7nhGwAociAIhALZ1NoRuDB00eycn723TAtj6PE1gKc1tx7eSQXCuLmFo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1809206},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"dc5d0b311c3aa7ee99a14b4a0ac2d8c31751f1ab","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.14.3_1763624515216_0.9129715897547799","host":"s3://npm-registry-packages-npm-production"}},"0.14.4":{"name":"loopwind","version":"0.14.4","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.14.4","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"4894f0e6cb1c3c711dd82ea8cb48feef9bd12d97","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.14.4.tgz","fileCount":171,"integrity":"sha512-2rPCwUtuRqGVH0TkpO6X2lw0FY0AlRNqnFnSEwx7vY1D+yBPfFqhcFJeLbLpwZwBARiHzHP5iQqybjtPhQaSJA==","signatures":[{"sig":"MEUCIGG88VmYoeZb2mgTKLpKuLd1h8NFBMzmRQGEtmSEkjPZAiEA0FRKpBB59MVFN77P7T/H8q7EwowE5DJNZDUtmRjQrBQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1809206},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"824373b7ac7d948401f26c39569e3500d56ae5aa","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.14.4_1763625284407_0.02525844560895174","host":"s3://npm-registry-packages-npm-production"}},"0.14.5":{"name":"loopwind","version":"0.14.5","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.14.5","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"e811ac9e45175f5265de6d8a2f61a52d8efce8dd","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.14.5.tgz","fileCount":171,"integrity":"sha512-uiSfwyYJzfK0eMeyW0rIoOnq/CUjyNazhxRfy9C4AL2qs7kyVdO4xY+/Re6+vmplmfkpRV1HXSylppr/IqDfGA==","signatures":[{"sig":"MEUCIQCllC944ywLwjNG5U1kmSsn3PMEjabWHf8d3QHEYP62ngIgFO1NS9gdUTpgCEDN+wYAdB19NBAMHMVEYzEjegf87R0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1811800},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"984803bb5e2c60eac6402744723b2a85e322adac","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.14.5_1763625569081_0.6407336153948986","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"loopwind","version":"0.15.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.15.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"a1b3dce70c4fff1ded8f35250b72eee954778970","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.15.0.tgz","fileCount":171,"integrity":"sha512-97ADrd0Oz8dMCE8Cpz0h0FZG4N50iY5C3Pr4+CL/hiFYhMyBwYjePvced2l6fNPXxnRIdGGMRK5OZMIkrLLR8Q==","signatures":[{"sig":"MEQCIDuJWq/G2qKRv/BVSa/zpRVFcdrZ1SAq5zaQdEvQ5fk1AiA+aPntW49ScpHWJ6OI+Y45s1EvbXR76zGBm55oYlTEnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1823241},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"36ef988af7c24069354c3365fdbdae5f0eb768c1","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.15.0_1763627136549_0.11610699882880393","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"loopwind","version":"0.16.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.16.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"a3f4b77768228f8d95f01e4d7d54b1fa60d1eb1b","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.16.0.tgz","fileCount":171,"integrity":"sha512-4HWPq/+IDievpaEaql4Xpgwwm+HeTZlbd5K7LXFzl6VpPU6f6lYopq940Sh0u5Br8xxkYDBxID9Vjm+Pff4HpQ==","signatures":[{"sig":"MEYCIQDgOsGYBsnUrUr6NcMidPmArmQDrGK/ZTGaIbBN8PnybgIhAJMrjy+kqeWgWC6gCBV3EWbzvt+Rq2CP33sUyM8OLuE6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1828199},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"981d653c603f8a402a4723a6cc4fa906d4625489","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.16.0_1763629892940_0.8458142922734351","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"loopwind","version":"0.17.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.17.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"917997b5c323091b9cd1e08edcfb49a4c59730e3","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.17.0.tgz","fileCount":173,"integrity":"sha512-iNrpG3yAsTkR6EaMBdDgAn/s3a8XYca5J5TtyYuo9MaDxVaPxcKB2q+Vr2Sp+9f+SmTySlumaoybk96oSDgGqA==","signatures":[{"sig":"MEQCIHiJYeJ6cte3fpsoWkHzQ4ZS3rm5LZ71yS3GMbqoX/keAiBRrDsqhv1ZA2B2tzAFfCQryRnjMJo4UNCjunXstw4Iug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1841921},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"b87ce9398964d557b190b1f419b2f5968acd21e5","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.17.0_1763633548288_0.4320971915589853","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"loopwind","version":"0.18.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.18.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"a66125298976e6425084cf12e119ec9a1da8dca4","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.18.0.tgz","fileCount":489,"integrity":"sha512-4fDm2EyPYKLwJU2FT83xddoFVu1QqVGuf9/hLt0vlmyaMfLlucFxfYHEygmgokhiHjr8ZSEsjGWTN8FngtPPWA==","signatures":[{"sig":"MEUCIQChkqoPaLtKJ7ErSWzGsy4k8VK2b6/j8WBWB8Cw9DeMyQIgTiebNoXrRYyaBO7Lv7d03EdCnQKfE1dqRDMQzmNGQ68=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2428056},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"7c35a70cdab97e751eab6ad4e45ae4fc3dd74470","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.18.0_1763636511873_0.870743290670484","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"loopwind","version":"0.18.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.18.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"2a3c301b2e5858c8883033d47238bd2746f1efd4","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.18.1.tgz","fileCount":487,"integrity":"sha512-FcSjBXfS2B1m8XaHnZsuq3APM67ktxivDFwP4F62lkAelN9371jEjD8XROzqhnQDcS499bQN8sOfQugxQfHz+A==","signatures":[{"sig":"MEUCIQCdPiSTZgp69YknzntjfrNBtuStAwSNuHXG3oeTrX8tQQIgOj+9enfyLFhpBI3AYadFkyQa5hpEPs5l6rjzvksH+6U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2464232},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"}},"gitHead":"8c1d2f0f9895acb7610a109738cd67d4522678e5","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@babel/standalone":"^7.28.5","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.18.1_1763637303707_0.8623295998831875","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"loopwind","version":"0.19.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.19.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"1abc3ccda7f81ae7b50bca8ae50a26b52d3c84fc","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.19.0.tgz","fileCount":495,"integrity":"sha512-+JQSr4KHDBmj44L7cGUuvZCiOzso/hN1O9PpLazVMw27voHU46MpCSGE8BZsnMb5JUnpYYq3s138yuVduhymPA==","signatures":[{"sig":"MEUCIHSxqWuQMzt8xVduNQCEoCFW+5jlLwASmc3o3c/5tvc2AiEAhrT+RTrMfvlJ2kKSeivvGWU6De9df8IF1ksSh1U7vAA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2543594},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"971d9207982e5197dfedc93c1c53997c562b5df1","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.19.0_1763639196595_0.49364874278307025","host":"s3://npm-registry-packages-npm-production"}},"0.20.1":{"name":"loopwind","version":"0.20.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.20.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"df5649b176e3b68244ae0bef0cb6283282251f74","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.20.1.tgz","fileCount":505,"integrity":"sha512-JKyhjt1bI59GPX89t5wUrzOp4UR+K9ohgApNbG0xbm7ZX7koup4gphALrquFea3B3RAEsNoe1Bdi70hf2sv/og==","signatures":[{"sig":"MEUCIQDCaGqditCLfOcE0o8CM/yroxtnWuS+ArELpNd/AFmlFAIgDwR++Hr6NfEv78Fcxdc+aLy3ii8dbcgGUo4TDDPZmhI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2447853},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"5ddfea4c81481ee85697e1f7f569a3443e5fda61","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.20.1_1763650235014_0.715430312480904","host":"s3://npm-registry-packages-npm-production"}},"0.20.2":{"name":"loopwind","version":"0.20.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.20.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"305039151f8ee40037d7bf58f6fa8b55b6bca646","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.20.2.tgz","fileCount":504,"integrity":"sha512-FLSHwbxYpDAdIhW9kJmDfS9TCufOyMPNMxiUYWaTTP+mWMSfqIPeRFtpCkzs9YHLVAiMPEmd9G8iTFFRjBeKrQ==","signatures":[{"sig":"MEQCIDYjRq9Tr6tmxmsFBcAQabU4JoNdfLxhjhr/KTZt1X4GAiAErt6CiJAHlsjN7WtVmzZqJCAeX3wW8firDSUNPMF+Bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2448428},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"3d6d47c383c3ddfd996d7b9e59e35645b5799c8e","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.20.2_1763662679501_0.02159185613508474","host":"s3://npm-registry-packages-npm-production"}},"0.20.4":{"name":"loopwind","version":"0.20.4","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.20.4","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"af5924c8d4af728f1bae6d4d4d134057f0a4b73e","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.20.4.tgz","fileCount":504,"integrity":"sha512-bC3+PYpsqQq9UNMlBQX4p/JGz1eGrua4w87EJqEQpeMU1GX/72/Tn2+796Y0zmloz/RSrDvUgPs2J5o8NIzi5w==","signatures":[{"sig":"MEUCIEhGNSQ9l4/dEEZgjBj89p8FrIJ4jcyixW0qFXeAJfBlAiEAmb42pbysad7aEHY+7nUxZpI1DcsGXinnuzwHqysZyYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2490705},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"0e6063151e4cebce3773c246a2a5b05e2c5b6efa","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.20.4_1763671681070_0.5892327333671841","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"loopwind","version":"0.21.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.21.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"f89368f8dd6539bc547d4b5625f698001efd30e6","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.21.0.tgz","fileCount":519,"integrity":"sha512-8FPTQL6xrW1kHvK2QmvTo8wXIsy94MDIfreGqxzO5d9jT64MAKa/em+3K+xh74F9Q8DGgZSo7VmE8L8no8SCXQ==","signatures":[{"sig":"MEUCIGLRk4vJmrVp/pF20IjwvZCJgDp/XStaeLEyVnYuoJp/AiEAuZwm3/yemoMg/Y0sSKyV1GTZ9lL9fcihjn/eGP6uVb8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2610429},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"f8adca87c570ed45f6bd8cfbce8e671bdb6791ea","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.21.0_1763832684282_0.7494231690361308","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"loopwind","version":"0.22.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.22.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"6a6a5b0452110695d4e9d874cbb7d275b4d93aea","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.22.0.tgz","fileCount":527,"integrity":"sha512-UdI8Q/SMrbeE44RuSBJrwx2PxjdJh08NlWSisipHXVCgqVhf6tMbQI6pBkpiEX+DwT8XulZ62gNaOQhQZLdkwA==","signatures":[{"sig":"MEYCIQDdOYmOKD2qqhkcoSnTHvWhsSUAIuLdG/OaK1L/ihIZJwIhAPNgA1I2YOLQqfl58qgMxs4A1Vd6663YQvKMZv7D5iB5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2663601},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"f8f6034080ee2083479c313b8215ad0f09a6cb4f","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","@resvg/resvg-js":"^2.6.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.22.0_1764077284081_0.2973001245692324","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"loopwind","version":"0.23.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.23.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"e6246561505903c3c94e2e756c65e0baa2fca503","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.23.0.tgz","fileCount":589,"integrity":"sha512-LV5C+uZDTO0OYb7VZU8WttoXIjif6Js83Oo/XztvCvmEdkzlRl+X0yqCiEOtwt6F5H0Ku1QT/7g2edEn1o/3aw==","signatures":[{"sig":"MEYCIQDQdsunl0Gxna3skuKIOW33fmZWfN5+eoziFQmhJpTo8QIhAMxx5ZOG4fKP7muu0E46oAYh9h0hJYXDwBXYTgS3hqJ4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8456795},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","default":"./dist/sdk/index.js"},"./sdk/workers":{"types":"./dist/sdk/workers/index.d.ts","default":"./dist/sdk/workers/index.js"},"./sdk/compiler":{"types":"./dist/sdk/compiler.d.ts","default":"./dist/sdk/compiler.js"}},"gitHead":"d4b2ab7120844f8f74b2248e14eb836dc191b7a7","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@babel/standalone":"^7.28.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6","@types/babel__standalone":"^7.1.9"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.23.0_1766142452019_0.6738443316626073","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"loopwind","version":"0.24.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.24.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"ba2c4e447bd100048f7fe2071e71d32e2f484168","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.24.0.tgz","fileCount":136,"integrity":"sha512-zn/aPZMcnBImL3hMOEkVAIH+ljqnOQ+CP1Qi5gN8GU5ZBf0hs7oXtVAE+b8789oEKs1/TVsXcXbvC0ouc8aH/Q==","signatures":[{"sig":"MEUCIEQJKuR0DMrT2rChaM/czJpLKsTneyZ/vSOns4HfDkZiAiEA4UxmWR4Y6IvqJQSIni1pK8xUFOvvA/ReXXNBGrj0Gzw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":830364},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"3b428cd5a20ca90b82d759eab900a65bad1a13fd","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.24.0_1767619429228_0.37062425097811724","host":"s3://npm-registry-packages-npm-production"}},"0.24.1":{"name":"loopwind","version":"0.24.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.24.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"5b010f44d450f06a00c4c24f92ab681b8f24bc66","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.24.1.tgz","fileCount":136,"integrity":"sha512-CoS7KKBFpiVJj5LRh1PYs213QZjljXoEMf7y64f/8HPniAOvu3NrBtsNcc/EtLQaGlv1ldS9WB7GYLogTqCqHw==","signatures":[{"sig":"MEYCIQCyAQuE/GiEBm2OyeLO7yLXmf1KlZULPUwKYJm76xQOSgIhAKTeCORTXLnMO2H9ueX2NtiS11IzYUvvzg+428u2zbXk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":830377},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"8a95507375c782b4ca53ee62e87bed7e88e05fcc","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.24.1_1767620531882_0.5296934719576067","host":"s3://npm-registry-packages-npm-production"}},"0.24.2":{"name":"loopwind","version":"0.24.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.24.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"1440e487078894cba3ebf1e4e90f43c800a5a222","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.24.2.tgz","fileCount":138,"integrity":"sha512-zB8JVvz2mD29sBZxlGi03lIHQXk3ZMY1naiGmLhkzrMT4sj/EVqw7nq+repsOm5gK4ViSfvVrYXJnHLRCpCi8g==","signatures":[{"sig":"MEUCIQCYm1Y8dFNYdUT4W5hEIYHvnkmyu+uk/FJuNzF8fJ3DmAIgSzCi4Wr5v6fnB4oPN8QvEkgNg77EAVLqz2tZ/3rNaYg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":946923},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"36205d85b6fc7dd393ac2e0db52d5377643148de","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.24.2_1767648484965_0.6678461204513308","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"loopwind","version":"0.25.0","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.0","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"e6b0366093da9d50de5c324889b6e5367a9bd092","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.0.tgz","fileCount":138,"integrity":"sha512-cAjeQgILQeHROP3+v+lsV9QeAj4zUgjMANBWj5wdDbk14wpEN58LiafMKizDjABPRl9fh6Q+u+N6PBRwmEWZvg==","signatures":[{"sig":"MEYCIQD7HpkJ/WedjaScMbpGDPJkuRL+2io6X3qcr+kgmv+yBQIhANOx3nbdtQUeWOHV907NCGGGXCTmt9y3YJKo9CfB+qWi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":950056},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"f25e4ac63853b6c9cec9f279b7ce617628b43fef","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.0_1767649575515_0.3181709805516253","host":"s3://npm-registry-packages-npm-production"}},"0.25.1":{"name":"loopwind","version":"0.25.1","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.1","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"5ac7f86c9bdc82b080bbcac9d2842faf8d6e07da","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.1.tgz","fileCount":138,"integrity":"sha512-CijNULRWi1DMvSW1ejAp+VcL7Q2+DEW4F7HA/Oe7tYSIhRG31Kphc8w50jeLlKCIXw6q7UfF2uFfTEf6qKJGvA==","signatures":[{"sig":"MEYCIQDq6PUSvT/RRm2xgzxuiHv+ndiq9lFf88HN0wkbGpYCiwIhAMnX+0SbY24Nxkipf3YY3QMHcTiOBqEAzn4rg7SOxISz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":950372},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"850877cd2751cb2670de4ac44353c87eeba396ab","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.1_1767650164608_0.312170333212592","host":"s3://npm-registry-packages-npm-production"}},"0.25.2":{"name":"loopwind","version":"0.25.2","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.2","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"f43381ebe6df5d5fe3e87ef58883adfb0643f03a","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.2.tgz","fileCount":138,"integrity":"sha512-V/Je0rkvyv4PiFashTaDTtUc8qpCTSnrkdjJzU0CL35rlaS7tjDN8gG6ZPOOG3KEE4yVJqNXcdfD5e/Y+MXkOA==","signatures":[{"sig":"MEQCIFAzbsaZq/b1orea2kMOcGXKFKfJ4dPr3Hx9KWc5P7SjAiBsS9zB4+DXwDXEryuvFNWYTUCK4tUBhr4sGc+7ka41Ng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":950390},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"0aa6c4b7d907242115694e52e46aebce4901ab42","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","open":"^11.0.0","vite":"^7.2.2","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","express":"^5.1.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","tailwindcss":"^3.4.1","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2","@vitejs/plugin-react":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/express":"^5.0.5","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.2_1767650556788_0.9810292435065116","host":"s3://npm-registry-packages-npm-production"}},"0.25.3":{"name":"loopwind","version":"0.25.3","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.3","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"d05bde60e1081b155e793b870e86fb060950740d","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.3.tgz","fileCount":138,"integrity":"sha512-Tznnf4ac7MkFHqIbyPNSeHyxmkqf3o6uPpYu5iXr3J5cEKquBD7uzcuI/8WdfLB4hwBqya/pYLX4t1wZlRHDNA==","signatures":[{"sig":"MEQCIEiPER3oelk/BoDbJCpqAkZnX2BRLh0/OJKKywrEbOsNAiAI4BUS2+7PPVwXtzxmPWhzBoSCjeaitKE7cV2ovYHWfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":949995},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"bc3d08a8d24a406fde6b3240c2981b19acd3f06c","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","clsx":"^2.1.1","boxen":"^7.1.1","chalk":"^5.3.0","pngjs":"^7.0.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","chokidar":"^4.0.3","commander":"^12.0.0","react-dom":"^18.3.1","mediabunny":"^1.25.0","patch-package":"^8.0.1","tailwind-merge":"^3.4.0","chalk-animation":"^2.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/chalk-animation":"^1.6.3","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.3_1767689890133_0.3241048909055557","host":"s3://npm-registry-packages-npm-production"}},"0.25.4":{"name":"loopwind","version":"0.25.4","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.4","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"476536646fbc2699f067f7c6e1c58452f062268a","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.4.tgz","fileCount":138,"integrity":"sha512-xN5ZSPATZFY+9dSqDmPuWEKpQ7FPl79FdvdkZ02d4rrsCcdisEbGZY7zQMvx9Mx4xMylP3dQis1kqqM06W0N4w==","signatures":[{"sig":"MEUCIBLz5RrnH7pEySZKrWAY8Q2U/KxfhyCmvqCGQ0QLD0x9AiEA05j7IKRKkoTthVMT4khcH6l06q9+WjbYT8E2fTGa7tM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":949739},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"148d35eadd94d494c3b0c6e278e4dd9b05bf9847","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","postinstall":"patch-package","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","commander":"^12.0.0","patch-package":"^8.0.1","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.4_1767690243478_0.7316219738387897","host":"s3://npm-registry-packages-npm-production"}},"0.25.5":{"name":"loopwind","version":"0.25.5","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.5","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"18f5a0235ecc3b78e630a74416a74ccac3fbda05","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.5.tgz","fileCount":137,"integrity":"sha512-kGhw+8Gc/+8cP6chvxsirZIGz/EQM8HCNa5drw5RaWfbvDTZQlPRkhYHmF70G+k350cZB2Gm6ePHqUCKYi0tbQ==","signatures":[{"sig":"MEUCIQCSXFSKsGOSkYIpwgU1zGqKNgHaoKlWGt8kUFZ/a+DMRgIgRaYe5jQUoH9AwKPVsXEcin+iTnSFbKWB+3L4rN0gSEI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":738515},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"3c86536b89959c6fb4e28b75f93dec3b75d6538e","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"deprecated":"Broken release - text rendering issues. Use 0.25.4 instead.","repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","commander":"^12.0.0","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.5_1767691001971_0.8609921288924338","host":"s3://npm-registry-packages-npm-production"}},"0.25.6":{"name":"loopwind","version":"0.25.6","keywords":["design","cli","templates","satori","tailwind","image-generation","og-image","social-media","marketing"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.6","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"78a26d50a3850c32c851583fb7714ea84d251d5f","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.6.tgz","fileCount":137,"integrity":"sha512-tE1RHYempyT1lUs8PU/G2yLlFsKwV1RBN/sXlHEqLu0Pfmk8/TBZ6N5+pfZV9DK7NsDKsPVr32gkMJeZuhOt5A==","signatures":[{"sig":"MEUCIQDXzTR0ZvOaOR3oNQhcr/rP7eqyu+WQ6ViKSlOrCO0ADgIgfKnvQCAt/Ai8/SDi52zJFSgDN6jltj3S3fF2NXVoXA0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":738510},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"gitHead":"641140981c791f3e9137082f4f9809ef16b05399","scripts":{"dev":"tsc --watch","build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","prepublishOnly":"npm run build"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI tool for AI code agents and developers for generating images and videos.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","commander":"^12.0.0","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.6_1767691390983_0.7943237496198552","host":"s3://npm-registry-packages-npm-production"}},"0.25.7":{"name":"loopwind","version":"0.25.7","keywords":["design","cli","sdk","templates","satori","tailwind","image-generation","og-image","social-media","marketing","jsx","react","video-generation","cloudflare-workers","edge"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.7","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"c0402a69141b5bc96c8a7f0ce7c28c2b7ad8a496","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.7.tgz","fileCount":213,"integrity":"sha512-Z6M9COEeqOz0+wKc4nbr/GVvWnpAgmks+LO5qhBPzE1foZeGciOjr7UK+Z0T+z0UyB9gQURcSR47epbftaZPBQ==","signatures":[{"sig":"MEUCIAVpKuDEQloLV6M44MxB4uqhTfBc0K3a0Y52bG+MJa59AiEA7ws1mBPOC8SY/YIzKoLIOHLVkIGRR3smnNlRpThumnY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1526870},"main":"./dist/sdk/index.js","type":"module","types":"./dist/sdk/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js","default":"./dist/sdk/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./edge":{"types":"./dist/sdk/edge.d.ts","import":"./dist/sdk/edge.js","default":"./dist/sdk/edge.js"}},"gitHead":"c5de8a1c31e091300b1934f3d36e08258115ee0f","scripts":{"dev":"tsc --watch","test":"node --import tsx --test tests-sdk/*.test.ts","build":"tsc && npm run copy-assets","test:sdk":"node --import tsx --test tests-sdk/*.test.ts","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI and SDK for generating images and videos from JSX templates using Tailwind CSS.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","open":"^10.0.0","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","commander":"^12.0.0","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.7_1767730927709_0.8269562928252627","host":"s3://npm-registry-packages-npm-production"}},"0.25.8":{"name":"loopwind","version":"0.25.8","keywords":["design","cli","sdk","templates","satori","tailwind","image-generation","og-image","social-media","marketing","jsx","react","video-generation","cloudflare-workers","edge"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.8","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"82bfbb7c2e0976293b9eb429cad042bfbe3f1908","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.8.tgz","fileCount":213,"integrity":"sha512-EJ/xey+6XJ0rn7KVd1X+HVguHMLyp+7SXHlxTc3Z3wFT+ot/as7J6u727fhjxx030c0Rdr76Q+JWQ0vpYGwkug==","signatures":[{"sig":"MEQCICxQLjz69YA9uomNJieccW5o6JHeMPHSYyPWtcQ+2jyTAiAIoZmIWlZxi+Emxc1suc4qlj39Ld0pEORWi/eMvUWbBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1533737},"main":"./dist/sdk/index.js","type":"module","types":"./dist/sdk/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js","default":"./dist/sdk/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./edge":{"types":"./dist/sdk/edge.d.ts","import":"./dist/sdk/edge.js","default":"./dist/sdk/edge.js"}},"gitHead":"fd2733efe33f543f2a6e2d68b31802ec220068ba","scripts":{"dev":"tsc --watch","test":"node --import tsx --test tests-sdk/*.test.ts","build":"tsc && npm run copy-assets","test:sdk":"node --import tsx --test tests-sdk/*.test.ts","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI and SDK for generating images and videos from JSX templates using Tailwind CSS.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","open":"^10.0.0","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","loopwind":"^0.25.7","commander":"^12.0.0","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.8_1767732051266_0.7099062414782753","host":"s3://npm-registry-packages-npm-production"}},"0.25.9":{"name":"loopwind","version":"0.25.9","keywords":["design","cli","sdk","templates","satori","tailwind","image-generation","og-image","social-media","marketing","jsx","react","video-generation","cloudflare-workers","edge"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.9","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"9908ee6594f48bbce291517d94c66466c6370296","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.9.tgz","fileCount":213,"integrity":"sha512-ejFQuisTzaBjKzOP3Rx8q/W4m5FLG8j6HWhnna7hYCyIpa4GdWdSebGf4HGllAEhu2nuc6mYJX06XJ7mIRxrhQ==","signatures":[{"sig":"MEUCIHxo+047/+dgKwKOTmp8q7U8YRbfYQrt99LdvQ+80bN/AiEAp5Iu51TH/6wvDtGCKtqgoMJQNi4tRoiehRJL8dADIOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1516676},"main":"./dist/sdk/index.js","type":"module","types":"./dist/sdk/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js","default":"./dist/sdk/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./edge":{"types":"./dist/sdk/edge.d.ts","import":"./dist/sdk/edge.js","default":"./dist/sdk/edge.js"}},"gitHead":"fd2733efe33f543f2a6e2d68b31802ec220068ba","scripts":{"dev":"tsc --watch","test":"node --import tsx --test tests-sdk/*.test.ts","build":"tsc && npm run copy-assets","test:sdk":"node --import tsx --test tests-sdk/*.test.ts","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI and SDK for generating images and videos from JSX templates using Tailwind CSS.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","open":"^10.0.0","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","loopwind":"^0.25.7","commander":"^12.0.0","workers-og":"^0.0.27","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.9_1767733841620_0.10389985802314872","host":"s3://npm-registry-packages-npm-production"}},"0.25.10":{"name":"loopwind","version":"0.25.10","keywords":["design","cli","sdk","templates","satori","tailwind","image-generation","og-image","social-media","marketing","jsx","react","video-generation","cloudflare-workers","edge"],"author":{"name":"Tommy Vedvik"},"license":"MIT","_id":"loopwind@0.25.10","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"bin":{"lw":"dist/cli.js","loopwind":"dist/cli.js"},"dist":{"shasum":"18d05445bc5025b5be443dddafaae7b78c7cb07f","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.10.tgz","fileCount":220,"integrity":"sha512-3F6f7nVMopZM20VEu47MEFP/gs+kWhvAG3gEXKmbVaiCx3NpVS9KP+AclWPrFJmnwQu49+nyx9ch2z3/3/WQRQ==","signatures":[{"sig":"MEUCIQCZs8ZjH9m7fTihRpq7UbiYZ6RUq80eN5bAnGASDnACtwIgEB4T/LSjEJAXvJmjpwZvoWkmSc/sEbRBhbsgmv0J5m0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1607952},"main":"./dist/sdk/index.js","type":"module","types":"./dist/sdk/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js","default":"./dist/sdk/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./edge":{"types":"./dist/sdk/edge.d.ts","import":"./dist/sdk/edge.js","default":"./dist/sdk/edge.js"}},"gitHead":"e62c2a13d0ecc31251c868bf0b3706f01cd45677","scripts":{"dev":"tsc --watch","test":"node --import tsx --test tests-sdk/*.test.ts","build":"tsc && npm run copy-assets","test:sdk":"node --import tsx --test tests-sdk/*.test.ts","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"repository":{"url":"git+https://github.com/tomtev/loopwind.git","type":"git"},"_npmVersion":"10.9.2","description":"A CLI and SDK for generating images and videos from JSX templates using Tailwind CSS.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"ora":"^8.0.1","open":"^10.0.0","chalk":"^5.3.0","react":"^18.2.0","sharp":"^0.34.5","gifenc":"^1.0.3","qrcode":"^1.5.4","satori":"^0.18.3","esbuild":"^0.27.0","fast-png":"^8.0.0","loopwind":"^0.25.7","commander":"^12.0.0","workers-og":"^0.0.27","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","@resvg/resvg-wasm":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.3.3","@types/node":"^20.11.0","@types/react":"^18.2.48","@types/qrcode":"^1.5.6","@types/gradient-string":"^1.1.6"},"_npmOperationalInternal":{"tmp":"tmp/loopwind_0.25.10_1767778459715_0.4084508777801348","host":"s3://npm-registry-packages-npm-production"}},"0.25.11":{"name":"loopwind","version":"0.25.11","description":"A CLI and SDK for generating images and videos from JSX templates using Tailwind CSS.","type":"module","bin":{"loopwind":"dist/cli.js","lw":"dist/cli.js"},"main":"./dist/sdk/index.js","types":"./dist/sdk/index.d.ts","exports":{".":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js","default":"./dist/sdk/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"},"./edge":{"types":"./dist/sdk/edge.d.ts","import":"./dist/sdk/edge.js","default":"./dist/sdk/edge.js"}},"scripts":{"build":"tsc && npm run copy-assets","copy-assets":"cp -r src/default-templates dist/ && cp -r src/assets dist/","dev":"tsc --watch","test":"node --import tsx --test tests-sdk/*.test.ts","test:sdk":"node --import tsx --test tests-sdk/*.test.ts","prepublishOnly":"npm run build && npm test"},"keywords":["design","cli","sdk","templates","satori","tailwind","image-generation","og-image","social-media","marketing","jsx","react","video-generation","cloudflare-workers","edge"],"author":{"name":"Tommy Vedvik"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/tomtev/loopwind.git"},"homepage":"https://loopwind.dev","bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"dependencies":{"@resvg/resvg-wasm":"^2.6.2","chalk":"^5.3.0","commander":"^12.0.0","esbuild":"^0.27.0","fast-png":"^8.0.0","gifenc":"^1.0.3","gradient-string":"^3.0.0","h264-mp4-encoder":"^1.0.12","loopwind":"^0.25.7","open":"^10.0.0","ora":"^8.0.1","qrcode":"^1.5.4","react":"^18.2.0","satori":"^0.18.3","sharp":"^0.34.5","workers-og":"^0.0.27"},"devDependencies":{"@types/gradient-string":"^1.1.6","@types/node":"^20.11.0","@types/qrcode":"^1.5.6","@types/react":"^18.2.48","tsx":"^4.21.0","typescript":"^5.3.3"},"engines":{"node":">=18.0.0"},"_id":"loopwind@0.25.11","gitHead":"0fe5204e71cb848ce5dca2a0ec2e5ae66b173853","_nodeVersion":"22.15.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-gAGOPzRzPgTlYsWZKidgSTdZQxkKuXbJIJzxmuKEtfCngBAMLbZ1qQoh7KuYzseLw49iOlCSQNfqsm21NcKWkw==","shasum":"3ea9b0287f56c6f0d4f65b5b4a3438418258db2c","tarball":"https://registry.npmjs.org/loopwind/-/loopwind-0.25.11.tgz","fileCount":220,"unpackedSize":1607901,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCXl2B3m4FI1/xSb7f+BoRJGrRy2tcbL4H6UN4wLMCmdAIgfNdscHD0C0Ev2SB14Vdq6Kx/T25Qhtsgi5qcSeko4WY="}]},"_npmUser":{"name":"tomtev","email":"tommyvedvik@gmail.com"},"directories":{},"maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/loopwind_0.25.11_1767779592841_0.6326251085000232"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-18T12:35:50.342Z","modified":"2026-01-07T09:53:13.261Z","0.9.1":"2025-11-18T12:35:50.673Z","0.9.2":"2025-11-18T12:49:19.463Z","0.9.3":"2025-11-18T12:59:46.353Z","0.10.0":"2025-11-18T13:36:13.851Z","0.10.1":"2025-11-18T13:41:13.162Z","0.10.2":"2025-11-18T13:45:55.920Z","0.10.3":"2025-11-18T13:47:21.138Z","0.10.4":"2025-11-18T14:16:49.159Z","0.11.0":"2025-11-18T17:32:07.676Z","0.12.0":"2025-11-18T21:27:47.545Z","0.12.1":"2025-11-18T21:32:21.908Z","0.12.2":"2025-11-18T22:04:04.592Z","0.12.3":"2025-11-18T22:11:19.309Z","0.13.0":"2025-11-19T10:13:40.146Z","0.13.1":"2025-11-19T10:20:28.256Z","0.13.2":"2025-11-19T11:19:03.787Z","0.13.3":"2025-11-19T12:26:28.937Z","0.13.4":"2025-11-19T12:39:36.617Z","0.14.0":"2025-11-19T19:44:34.006Z","0.14.1":"2025-11-19T19:54:53.789Z","0.14.2":"2025-11-19T20:05:39.087Z","0.14.3":"2025-11-20T07:41:55.460Z","0.14.4":"2025-11-20T07:54:44.655Z","0.14.5":"2025-11-20T07:59:29.296Z","0.15.0":"2025-11-20T08:25:36.781Z","0.16.0":"2025-11-20T09:11:33.134Z","0.17.0":"2025-11-20T10:12:28.486Z","0.18.0":"2025-11-20T11:01:52.101Z","0.18.1":"2025-11-20T11:15:03.942Z","0.19.0":"2025-11-20T11:46:36.833Z","0.20.1":"2025-11-20T14:50:35.270Z","0.20.2":"2025-11-20T18:17:59.749Z","0.20.4":"2025-11-20T20:48:01.291Z","0.21.0":"2025-11-22T17:31:24.539Z","0.22.0":"2025-11-25T13:28:04.313Z","0.23.0":"2025-12-19T11:07:32.255Z","0.24.0":"2026-01-05T13:23:49.389Z","0.24.1":"2026-01-05T13:42:12.061Z","0.24.2":"2026-01-05T21:28:05.141Z","0.25.0":"2026-01-05T21:46:15.700Z","0.25.1":"2026-01-05T21:56:04.778Z","0.25.2":"2026-01-05T22:02:36.975Z","0.25.3":"2026-01-06T08:58:10.312Z","0.25.4":"2026-01-06T09:04:03.672Z","0.25.5":"2026-01-06T09:16:42.225Z","0.25.6":"2026-01-06T09:23:11.180Z","0.25.7":"2026-01-06T20:22:07.906Z","0.25.8":"2026-01-06T20:40:51.468Z","0.25.9":"2026-01-06T21:10:41.822Z","0.25.10":"2026-01-07T09:34:19.925Z","0.25.11":"2026-01-07T09:53:13.042Z"},"bugs":{"url":"https://github.com/tomtev/loopwind/issues"},"author":{"name":"Tommy Vedvik"},"license":"MIT","homepage":"https://loopwind.dev","keywords":["design","cli","sdk","templates","satori","tailwind","image-generation","og-image","social-media","marketing","jsx","react","video-generation","cloudflare-workers","edge"],"repository":{"type":"git","url":"git+https://github.com/tomtev/loopwind.git"},"description":"A CLI and SDK for generating images and videos from JSX templates using Tailwind CSS.","maintainers":[{"name":"tomtev","email":"tommyvedvik@gmail.com"}],"readme":"# loopwind\n\n> The Shadcn for design and marketing. A template-based CLI tool for generating images and videos using React + Tailwind CSS + Satori.\n\n## Features\n- **Template-based**: Install templates and get full control over code.\n- **Fast Video Rendering**: WASM-based MP4 encoding with optional FFmpeg for 2x speed.\n- **Tailwind CSS & shadcn/ui styling**: Style templates with Tailwind & shadcn/ui utility classes (`text-foreground bg-primary/50`)\n- **Animate with classes**: Tailwind-style animation classes for video templates. (enter-fade-in/0/500, exit-fade-out/2500/500, loop-ping/500)\n- **Built-in Helpers**: QR codes, image embedding, video backgrounds, template composition\n- **Agent-friendly**: File-based editing perfect for code agents\n\n## Quick Start\n\n### Installation\n\n```bash\nnpm install -g loopwind\n```\n\nOr use with npx:\n\n```bash\nnpx loopwind --help\n```\n\n### Install a Template\n\n#### 1. Officials\n\n```bash\nloopwind add image-template\nloopwind add video-template\n```\n\nTemplates are installed to: `.loopwind/<template>/`.\n\n**Benefits:**\n- Templates are local to your project (like npm packages)\n- Different projects can use different template versions\n- Version controlled with your project\n- Easy to share within your team\n- Works offline once installed\n\n### Render a Video\n\n```bash\nloopwind render my-video '{\"title\":\"Hello World\"}'\n```\n\nVideos are rendered to MP4 by default and saved to the current directory.\n\n**Example video template** (`.loopwind/my-video/template.tsx`):\n\n```tsx\nexport const meta = {\n  name: 'my-video',\n  type: 'video',\n  size: { width: 1920, height: 1080 },\n  video: { fps: 30, duration: 3 },\n  props: { title: 'string' }\n};\n\nexport default function Template({ tw, title }) {\n  return (\n    <div style={tw('flex items-center justify-center w-full h-full bg-black')}>\n      {/* Fade in from 0ms to 800ms */}\n      <h1 style={tw('text-8xl font-bold text-white ease-out enter-fade-in/0/800')}>\n        {title}\n      </h1>\n    </div>\n  );\n}\n```\n\n### Render an Image\n\n```bash\nloopwind render banner-hero \\\n  --props '{\"title\":\"Hello World\",\"subtitle\":\"Welcome to loopwind\"}'\n```\n\nBy default, images are saved to the current directory.\n\nYou can specify a custom output path:\n\n```bash\nloopwind render banner-hero \\\n  --props '{\"title\":\"Hello World\",\"subtitle\":\"Welcome to loopwind\"}' \\\n  --out custom/path/banner.png\n```\n\nOr use a props file:\n\n```bash\n# props.json\n{\n  \"title\": \"Hello World\",\n  \"subtitle\": \"Welcome to loopwind\"\n}\n\nloopwind render banner-hero --props props.json --out banner.png\n```\n\n**Output formats:**\n\n```bash\n# PNG (default) - best for photos and complex gradients\nloopwind render banner-hero --props props.json --format png -o banner.png\n\n# SVG - scalable vector, smaller file size, perfect for template composition\nloopwind render banner-hero --props props.json --format svg -o banner.svg\n\n# WebP - modern format, smaller than PNG with similar quality\nloopwind render banner-hero --props props.json --format webp -o banner.webp\n\n# JPEG - smallest file size, good for photos\nloopwind render banner-hero --props props.json --format jpg -o banner.jpg\n```\n\n**SVG benefits with template composition:**\n- Smaller file size (typically 3-4x smaller than PNG)\n- Infinitely scalable without quality loss\n- Embedded templates remain as native SVG elements\n- Can be edited in design tools (Figma, Illustrator)\n\n### List Installed Templates\n\n```bash\nloopwind list\n```\n\n### Validate Templates\n\n```bash\nloopwind validate\nloopwind validate banner-hero\n```\n\n## shadcn/ui Design System\n\nloopwind uses **shadcn/ui's design system** by default! All templates have access to semantic color tokens:\n\n```tsx\n// Use shadcn colors in templates\n<div style={tw('bg-card border rounded-xl p-16')}>\n  <h1 style={tw('text-foreground font-bold')}>Title</h1>\n  <p style={tw('text-muted-foreground')}>Subtitle</p>\n</div>\n```\n\n**Supported shadcn classes:**\n- `text-primary`, `bg-secondary`, `text-muted-foreground`, `bg-card`, `border`, `bg-destructive`\n- **Opacity modifiers**: `bg-primary/50`, `text-muted-foreground/75`, `border/30`\n- **Dark mode ready**: Override colors in `loopwind.json`\n\nSee `SHADCN_INTEGRATION.md` for complete documentation.\n\n## Configuration (loopwind.json)\n\nTemplates automatically use your project's design tokens defined in `.loopwind/loopwind.json`. This allows generated images to match your brand colors and design system.\n\n### Initialize Config\n\n```bash\nloopwind init\n```\n\nThis creates a `.loopwind/loopwind.json` file in your project:\n\n```json\n{\n  \"colors\": {\n    \"primary\": \"#667eea\",\n    \"secondary\": \"#764ba2\",\n    \"background\": \"#ffffff\",\n    \"foreground\": \"#000000\",\n    \"muted\": \"#f3f4f6\",\n    \"accent\": \"#3b82f6\",\n    \"destructive\": \"#ef4444\",\n    \"border\": \"#e5e7eb\"\n  },\n  \"fonts\": {\n    \"sans\": [\"Inter\", \"system-ui\", \"sans-serif\"],\n    \"mono\": [\"JetBrains Mono\", \"monospace\"]\n  },\n  \"tokens\": {\n    \"borderRadius\": {\n      \"sm\": \"0.25rem\",\n      \"md\": \"0.5rem\",\n      \"lg\": \"1rem\",\n      \"xl\": \"1.5rem\"\n    }\n  },\n  \"defaults\": {\n    \"width\": 1200,\n    \"height\": 630\n  }\n}\n```\n\n### Using Config in Templates\n\nTemplates receive the config via props:\n\n```tsx\nexport default function MyTemplate({ title, config }) {\n  const primaryColor = config?.colors?.primary || '#000';\n\n  return (\n    <div style={{ background: primaryColor }}>\n      {title}\n    </div>\n  );\n}\n```\n\nThis ensures your generated images use the same colors as your Tailwind/Shadcn setup!\n\n## Using Tailwind Classes\n\nTemplates can use Tailwind utility classes for styling! The `tw()` function is automatically provided:\n\n```tsx\nexport default function MyTemplate({ title, tw }) {\n  return (\n    <div style={tw('flex items-center justify-center w-full h-full bg-primary text-white')}>\n      <h1 style={tw('text-6xl font-bold')}>\n        {title}\n      </h1>\n    </div>\n  );\n}\n```\n\nCombine with custom styles:\n\n```tsx\n<div\n  style={{\n    ...tw('flex flex-col p-20 text-white'),\n    background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',\n  }}\n>\n  <h1 style={tw('text-8xl font-bold')}>{title}</h1>\n</div>\n```\n\n### Automatic Tailwind Config Support\n\n**loopwind automatically detects and uses your `tailwind.config.js`!**\n\nIf you have a Tailwind project:\n\n```js\n// tailwind.config.js\nexport default {\n  theme: {\n    extend: {\n      colors: {\n        primary: '#667eea',\n        brand: {\n          500: '#0ea5e9',\n          900: '#0c4a6e',\n        },\n      },\n      spacing: {\n        '72': '18rem',\n      },\n    },\n  },\n};\n```\n\nYour templates can use these values:\n\n```tsx\n<div style={tw('bg-primary text-white p-72')}>\n  <div style={tw('bg-brand-500')}>Custom brand color!</div>\n</div>\n```\n\n**Config priority:**\n1. `tailwind.config.js` (if exists)\n2. `loopwind.json` (fallback)\n3. Default Tailwind values\n\n**Supported classes:**\n- Layout: `flex`, `flex-col`, `items-center`, `justify-between`, etc.\n- Spacing: `p-4`, `px-8`, `m-6`, `gap-4`, etc.\n- Typography: `text-6xl`, `font-bold`, `text-center`, etc.\n- Colors: `bg-primary`, `text-brand-500`, etc. (from your config!)\n- Effects: `opacity-90`, `rounded-xl`, etc.\n- shadcn/ui colors: `bg-card`, `text-foreground`, `text-muted-foreground`\n- Opacity modifiers: `bg-primary/50`, `text-muted-foreground/75`\n\n**Note:** Tailwind v4 uses CSS variables instead of JS config. We're working on CSS parsing support. For now, use `loopwind.json` or `tailwind.config.js` (v3 format).\n\n## Fonts\n\nloopwind includes **Inter** (Regular 400, Bold 700) bundled with the CLI. Fonts work out of the box with no configuration required.\n\n### Default Fonts\n\nBy default, templates use the bundled **Inter** font. No setup required - works offline!\n\n### Custom Fonts\n\nConfigure custom fonts in `loopwind.json`:\n\n```json\n{\n  \"fonts\": {\n    \"sans\": {\n      \"family\": [\"CustomFont\", \"sans-serif\"],\n      \"files\": [\n        { \"path\": \"fonts/CustomFont-Regular.woff\", \"weight\": 400 },\n        { \"path\": \"fonts/CustomFont-Bold.woff\", \"weight\": 700 }\n      ]\n    }\n  }\n}\n```\n\nThen use font classes in templates:\n\n```tsx\nexport default function Template({ title, tw }) {\n  return (\n    <h1 style={tw('font-sans font-bold text-6xl')}>\n      {title}\n    </h1>\n  );\n}\n```\n\n**Font paths** are relative to your `loopwind.json` location.\n\n**Available classes:**\n- `font-sans` - Uses `fonts.sans` from loopwind.json\n- `font-serif` - Uses `fonts.serif` from loopwind.json\n- `font-mono` - Uses `fonts.mono` from loopwind.json\n\n**Supported formats:** WOFF, WOFF2, TTF, OTF\n\n## Template Helpers\n\nTemplates have access to built-in helper functions:\n\n- **`tw(classes)`** - Convert Tailwind classes to inline styles\n- **`qr(text, options?)`** - Generate QR codes from text/URLs\n- **`image(propKey)`** - Embed images as data URIs\n- **`video(propKey)`** - Embed video frames (for video templates)\n- **`template(name, props)`** - Embed other templates\n- **`config`** - Access loopwind.json configuration\n\n### QR Code Helper\n\nGenerate QR codes from any text or URL using the `qr()` helper:\n\n```tsx\nexport default function Template({ title, url, qr, tw }) {\n  return (\n    <div style={tw('flex flex-col items-center p-16')}>\n      <h1 style={tw('text-5xl font-bold mb-8')}>{title}</h1>\n\n      {/* QR code auto-generated from url prop */}\n      <img src={qr(url)} width={200} height={200} alt=\"QR Code\" />\n\n      <p style={tw('text-xl mt-4')}>{url}</p>\n    </div>\n  );\n}\n```\n\n**Usage:**\n```bash\nloopwind render qr-card '{\n  \"title\": \"Visit Our Website\",\n  \"url\": \"https://loopwind.dev\"\n}'\n```\n\n**Customization:**\n```tsx\n// Custom size and error correction\n<img src={qr(url, {\n  width: 300,\n  margin: 2,\n  errorCorrectionLevel: 'H', // L, M, Q, H (higher = more error correction)\n  color: {\n    dark: '#000000',\n    light: '#FFFFFF'\n  }\n})} />\n```\n\n**How it works:**\n- All string props are automatically pre-generated as QR codes\n- Call `qr()` with any prop value (url, text, etc.)\n- Returns a data URI that can be used directly in `<img src={...} />`\n- Cached per render for performance\n\n**Use cases:**\n- Event tickets with QR codes\n- Business cards with contact info\n- Marketing materials with campaign URLs\n- Product labels with tracking codes\n\n### Image Helper\n\nEmbed images (jpg, png, gif, webp, svg) as data URIs using the `image()` helper:\n\n```tsx\nexport default function Banner({ background, tw, image }) {\n  return (\n    <div style={tw('relative w-full h-full')}>\n      <img src={image('background')} style={tw('absolute inset-0 w-full h-full object-cover')} />\n      <h1 style={tw('relative text-6xl font-bold text-white')}>Hello World</h1>\n    </div>\n  );\n}\n```\n\n**Props format:**\n```json\n{\n  \"background\": \"./path/to/image.jpg\"\n}\n```\n\n**Usage:**\n```bash\nloopwind render banner '{\n  \"background\": \"./my-background.jpg\"\n}'\n```\n\n**How it works:**\n- The renderer auto-detects props ending in image extensions (.jpg, .png, .gif, .webp, .svg)\n- Images are pre-loaded and converted to data URIs\n- Call `image('propKey')` to get the data URI for that prop\n- Works with any image format\n\n**Use cases:**\n- Background images in banners\n- Logos and brand elements\n- Product photos in cards\n- Avatar images\n\n### Video Helper\n\nFor video templates, embed video frames synchronized to the current animation frame using the `video()` helper:\n\n```tsx\nexport default function VideoOverlay({ background, title, tw, video, frame, progress }) {\n  const opacity = progress < 0.2 ? progress / 0.2 : 1;\n\n  return (\n    <div style={tw('relative w-full h-full')}>\n      {/* Background video - auto-syncs to current frame */}\n      <img\n        src={video('background')}\n        style={tw('absolute inset-0 w-full h-full object-cover')}\n      />\n\n      {/* Animated overlay */}\n      <h1\n        style={{\n          ...tw('relative text-8xl font-bold text-white'),\n          opacity\n        }}\n      >\n        {title}\n      </h1>\n    </div>\n  );\n}\n```\n\n**Props format:**\n```json\n{\n  \"title\": \"My Video\",\n  \"background\": \"./my-video.mp4\"\n}\n```\n\n**Usage:**\n```bash\nloopwind render video-overlay props.json --out output.mp4\n```\n\n**How it works:**\n1. First render detects video props (auto-detects .mp4, .mov, etc.)\n2. Extracts all frames at template's FPS\n3. Returns frame matching current template frame number\n4. Frames cached in memory for fast access\n\n**Use cases:**\n- Video backgrounds with text overlays\n- Adding titles/captions to existing videos\n- Combining multiple video sources\n- Dynamic watermarking\n\n### Template Composition Helper\n\nEmbed one template inside another using the `template()` helper. This is perfect for creating composite designs where smaller templates are reused as building blocks.\n\n**Just call template() - no declaration needed:**\n```tsx\nexport default function Template({ title, bannerTitle, bannerSubtitle, template, tw }) {\n  return (\n    <div style={tw('w-full h-full flex flex-col bg-slate-900 p-12')}>\n      <div style={tw('bg-white rounded-3xl p-10 flex flex-col')}>\n        <h1 style={tw('text-5xl font-bold mb-8')}>{title}</h1>\n\n        {/* Embed any template - auto-loaded on first render */}\n        <div style={tw('rounded-xl overflow-hidden flex')}>\n          {template('image', { title: bannerTitle, subtitle: bannerSubtitle })}\n        </div>\n      </div>\n    </div>\n  );\n}\n```\n\n**Usage:**\n```bash\nloopwind render composite-card '{\n  \"title\": \"Product Launch\",\n  \"bannerTitle\": \"New Release\",\n  \"bannerSubtitle\": \"Coming Soon\"\n}'\n```\n\n**How it works:**\n- **No declaration needed** - just call `template('any-template-name')`\n- First render pass detects which templates are needed\n- All templates load in parallel automatically\n- Second render pass completes with loaded templates\n- Each template uses its own meta for sizing\n- Returns JSX directly (not a data URI)\n- Satori renders everything as a single SVG tree\n\n**Pass props directly:**\n```tsx\n{template('image', { title: 'Custom Title', subtitle: 'Custom Subtitle' })}\n{template('qr-card', { url: 'https://example.com', title: 'Scan Me' })}\n```\n\n**Use cases:**\n- Composite social media graphics with reusable headers/footers\n- Multi-panel infographics\n- Email templates with consistent branding elements\n- Product cards with embedded badges or labels\n- Presentations with reusable slide components\n\n## Template Structure\n\nTemplates are TSX files with metadata. Each template can be either an **image** or a **video** template (not both).\n\n### Image Template\n\n```tsx\nexport const meta = {\n  name: \"banner-hero\",\n  description: \"Hero banner with shadcn design\",\n  type: \"image\", // Optional, defaults to \"image\"\n  size: { width: 1600, height: 900 },\n  props: {\n    title: \"string\",\n    subtitle: \"string?\"\n  }\n};\n\nexport default function Template({ title, subtitle, tw, qr, template }) {\n  return (\n    <div style={tw('w-full h-full flex flex-col justify-center p-20 bg-background')}>\n      <div style={tw('bg-card border rounded-xl p-16 flex flex-col')}>\n        <h1 style={tw('text-8xl font-bold text-foreground')}>{title}</h1>\n        {subtitle && (\n          <p style={tw('text-4xl text-muted-foreground/75')}>{subtitle}</p>\n        )}\n      </div>\n    </div>\n  );\n}\n```\n\n### Video Template\n\n```tsx\nexport const meta = {\n  name: \"animated-banner\",\n  description: \"Animated hero banner with shadcn design\",\n  type: \"video\",\n  size: { width: 1600, height: 900 },\n  props: {\n    title: \"string\",\n    subtitle: \"string?\"\n  },\n  video: {\n    fps: 30,\n    duration: 3\n  }\n};\n\nexport default function Template({ title, subtitle, tw }) {\n  return (\n    <div style={tw('w-full h-full flex flex-col justify-center items-center bg-background p-20')}>\n      <div style={tw('bg-card border rounded-xl p-16 flex flex-col')}>\n        {/* Bounce in from below: starts at 0ms, lasts 600ms */}\n        <h1 style={tw('text-9xl font-bold text-foreground ease-out enter-bounce-in-up/0/600')}>\n          {title}\n        </h1>\n        {subtitle && (\n          <p style={tw('text-5xl text-muted-foreground/75 mt-6 ease-out enter-fade-in-up/300/600')}>\n            {subtitle}\n          </p>\n        )}\n      </div>\n    </div>\n  );\n}\n```\n\n## Animation Classes (Video Only)\n\nTailwind-style animation classes for video templates. No manual `progress` or `frame` calculations needed!\n\n### Format\n\n```\nenter-{animation}/{startMs}/{durationMs}\nexit-{animation}/{startMs}/{durationMs}\nloop-{animation}/{durationMs}\n```\n\n- **startMs** - when animation begins (milliseconds)\n- **durationMs** - how long it lasts (milliseconds)\n\n### Utility-Based Animations\n\nAnimate any transform or opacity property directly using Tailwind-like utilities:\n\n```tsx\n// Translate - numeric (4px per unit)\n<div style={tw('enter-translate-x-5/0/500')}>Slide in 20px</div>\n<div style={tw('loop-translate-y-10/1000')}>Oscillate 40px</div>\n\n// Translate - keywords, fractions, arbitrary values\n<div style={tw('enter-translate-y-full/0/800')}>Slide full height (100%)</div>\n<div style={tw('enter-translate-x-1/2/0/600')}>Slide halfway (50%)</div>\n<div style={tw('enter-translate-y-[20px]/0/500')}>Exact 20px</div>\n<div style={tw('enter-translate-x-[5rem]/0/800')}>5rem (80px)</div>\n\n// Opacity (0-100)\n<div style={tw('enter-opacity-100/0/500')}>Fade to 100%</div>\n<div style={tw('loop-opacity-50/1000')}>Pulse to 50%</div>\n\n// Scale (0-200)\n<div style={tw('enter-scale-100/0/500')}>Scale to 1.0x</div>\n<div style={tw('enter-scale-150/0/800')}>Scale to 1.5x</div>\n\n// Rotate (degrees)\n<div style={tw('enter-rotate-90/0/500')}>Rotate 90°</div>\n<div style={tw('loop-rotate-360/2000')}>Spin continuously</div>\n\n// Skew (degrees)\n<div style={tw('enter-skew-x-12/0/500')}>Skew horizontally</div>\n\n// Negative values (prefix with -)\n<div style={tw('enter--translate-x-5/0/500')}>Slide left</div>\n\n// Combine multiple utilities\n<div style={tw('enter-translate-y-10/0/500 enter-rotate-45/0/500')}>\n  Slide and rotate together\n</div>\n```\n\n**Available utilities:** `translate-x-{n}`, `translate-y-{n}`, `opacity-{n}`, `scale-{n}`, `rotate-{n}`, `skew-x-{n}`, `skew-y-{n}`\n\n### Enter Animations\n\n```tsx\n// Fade in: starts at 0ms, lasts 500ms\n<h1 style={tw('enter-fade-in/0/500')}>Hello</h1>\n\n// Bounce in from below with easing\n<h1 style={tw('ease-out enter-bounce-in-up/0/600')}>Title</h1>\n\n// Staggered animations\n<h1 style={tw('ease-out enter-fade-in-up/0/400')}>First</h1>\n<p style={tw('ease-out enter-fade-in-up/200/400')}>Second</p>\n```\n\n**Available:** `fade-in`, `fade-in-up`, `fade-in-down`, `fade-in-left`, `fade-in-right`, `slide-up`, `slide-down`, `slide-left`, `slide-right`, `bounce-in`, `bounce-in-up`, `bounce-in-down`, `bounce-in-left`, `bounce-in-right`, `scale-in`, `zoom-in`, `rotate-in`, `flip-in-x`, `flip-in-y`\n\n### Exit Animations\n\n```tsx\n// Fade out: starts at 2500ms, lasts 500ms\n<h1 style={tw('exit-fade-out/2500/500')}>Goodbye</h1>\n\n// Combined enter and exit\n<h1 style={tw('enter-fade-in/0/500 exit-fade-out/2500/500')}>\n  Hello and Goodbye\n</h1>\n```\n\n### Loop Animations\n\n```tsx\n// Pulse opacity every 500ms\n<div style={tw('loop-fade/500')}>Pulsing</div>\n\n// Continuous rotation every 2000ms\n<div style={tw('loop-spin/2000')}>Spinning</div>\n```\n\n**Available:** `loop-fade`, `loop-bounce`, `loop-spin`, `loop-ping`, `loop-wiggle`, `loop-float`, `loop-pulse`, `loop-shake`\n\n### Easing Functions\n\nAdd before animation class:\n\n```tsx\n<h1 style={tw('ease-out-cubic enter-bounce-in/0/500')}>Dramatic</h1>\n```\n\n**Available:** `linear`, `ease-in`, `ease-out`, `ease-in-out`, `ease-in-cubic`, `ease-out-cubic`, `ease-in-out-cubic`, `ease-in-quart`, `ease-out-quart`, `ease-in-out-quart`\n\n### Per-Animation-Type Easing\n\nApply different easing functions to enter, exit, and loop animations:\n\n```tsx\n// Different easing for enter and exit\n<h1 style={tw('enter-ease-out-cubic enter-fade-in/0/500 exit-ease-in exit-fade-out/2500/500')}>\n  Smooth entrance, sharp exit\n</h1>\n\n// Loop with linear easing, enter with bounce\n<div style={tw('enter-ease-out enter-bounce-in/0/400 loop-ease-linear loop-fade/1000')}>\n  Bouncy entrance, linear loop\n</div>\n```\n\n**Available:** `enter-ease-*`, `exit-ease-*`, `loop-ease-*` (works with all easing functions)\n\n### Spring Easing\n\nNatural, physics-based bouncy animations:\n\n```tsx\n// Default spring easing\n<h1 style={tw('ease-spring enter-bounce-in/0/500')}>Bouncy spring!</h1>\n\n// Custom spring: ease-spring/mass/stiffness/damping\n<h1 style={tw('ease-spring/1/100/10 enter-scale-in/0/800')}>\n  Custom spring (mass=1, stiffness=100, damping=10)\n</h1>\n\n// Per-animation-type spring\n<div style={tw('enter-ease-spring enter-fade-in/0/500 exit-ease-out exit-fade-out/2500/500')}>\n  Spring entrance, smooth exit\n</div>\n```\n\n**Common spring presets:**\n- `ease-spring/1/100/10` - Gentle bounce (default)\n- `ease-spring/1/170/8` - Extra bouncy\n- `ease-spring/1/200/15` - Snappy (no bounce)\n\n### Bracket Notation\n\nFor CSS-like syntax:\n\n```tsx\n<h1 style={tw('enter-slide-up/[0.6s]/[1.5s]')}>Hello</h1>\n<h1 style={tw('enter-fade-in/[300ms]/[800ms]')}>World</h1>\n```\n\nSee the [Animation Documentation](https://loopwind.dev/animation) for complete reference.\n\n## Commands\n\n### `loopwind init`\n\nInitialize a `.loopwind/loopwind.json` config file with default design tokens.\n\n### `loopwind add <template>`\n\nInstall a template from the registry.\n\nOptions:\n- `-r, --registry <url>` - Custom registry URL\n\n### `loopwind list`\n\nList all installed templates with metadata.\n\n### `loopwind render <template>`\n\nRender a template to an image.\n\nOptions:\n- `-p, --props <file>` - Props file (JSON)\n- `-o, --out <file>` - Output file path\n- `--format <format>` - Output format: png, svg, webp (default: png)\n- `--video` - Render as video (coming soon)\n\n### `loopwind validate [template]`\n\nValidate template metadata. If no template is specified, validates all installed templates.\n\n## Validation & Error Messages\n\nloopwind automatically validates templates and props before rendering, providing helpful error messages.\n\n### Automatic Validation\n\n```bash\n# Missing required props\n$ loopwind render banner-hero --props '{}'\n✖ Template validation failed\n  ✗ props: Missing required prop: \"title\"\n    → Add \"title\" to your props: --props '{\"title\":\"value\"}'\n\n# Wrong prop type\n$ loopwind render banner-hero --props '{\"title\":123}'\n✖ Template validation failed\n  ✗ props: Prop \"title\" should be a string, got number\n    → Change \"title\" to a string: \"title\": \"value\"\n```\n\n### Enhanced Satori Error Messages\n\nWhen rendering fails, loopwind provides clear suggestions:\n\n```bash\n$ loopwind render my-template --props props.json\n✖ Failed to render template\n\nError: Satori requires explicit display: flex for containers with multiple children\n\nSuggestions:\n  • Add \"flex\" or \"flex-col\" to your Tailwind classes: tw(\"flex items-center\")\n  • Or add display: flex directly: style={{ display: \"flex\", ...tw(\"...\") }}\n  • Every <div> with 2+ children MUST have display: flex or display: none\n```\n\nSee `VALIDATION.md` for complete validation documentation and troubleshooting.\n\n## Creating Custom Templates\n\nTemplates are stored in your project's `.loopwind/` directory. Each template has its own folder with a `template.tsx` file.\n\n1. Create a folder:\n\n```bash\nmkdir -p .loopwind/my-template\n```\n\n2. Create `template.tsx` with exported meta:\n\n```tsx\nexport const meta = {\n  name: \"my-template\",\n  description: \"My custom template\",\n  type: \"image\",\n  size: { width: 1200, height: 630 },\n  props: { title: \"string\" }\n};\n\nexport default function MyTemplate({ title, tw }) {\n  return (\n    <div style={tw('flex items-center justify-center w-full h-full bg-black text-white text-5xl')}>\n      {title}\n    </div>\n  );\n}\n```\n\n3. Validate and render:\n\n```bash\nloopwind validate my-template\nloopwind render my-template --props '{\"title\":\"Hello\"}' --out test.png\n```\n\n## Use Cases\n\n- 🎯 **OG Images**: Generate Open Graph images for websites\n- 📱 **Social Media**: Create social media graphics\n- 📧 **Email Headers**: Generate email banners\n- 🎨 **Marketing**: Automate marketing asset creation\n- 🤖 **AI Agents**: Let LLMs generate images programmatically\n\n## Video Support\n\nVideo templates use `type: \"video\"` and support `frame` and `progress` props for animations.\n\n### Creating Video Templates\n\nVideo templates are similar to image templates but include `frame` and `progress` props for animations:\n\n```tsx\nexport const meta = {\n  name: \"my-video\",\n  type: \"video\",\n  size: { width: 1200, height: 630 },\n  props: { title: \"string\" },\n  video: {\n    fps: 30,\n    duration: 3\n  }\n};\n\nexport default function Template({ title, frame, progress, tw, qr, template }) {\n  return (\n    <div\n      style={{\n        ...tw('w-full h-full flex items-center justify-center'),\n        opacity: progress,\n        transform: `translateY(${20 - progress * 20}px)`\n      }}\n    >\n      <h1 style={tw('text-6xl font-bold')}>{title}</h1>\n    </div>\n  );\n}\n```\n\n### Rendering Videos\n\n```bash\n# Render to MP4 (default - WASM encoder, no dependencies)\nloopwind render my-video '{\"title\":\"Animated Title\"}' -o output.mp4\n\n# Render to GIF (great for emails, GitHub, Slack)\nloopwind render my-video '{\"title\":\"Animated Title\"}' --format gif -o output.gif\n\n# With custom quality settings\nloopwind render my-video props.json --crf 18   # Higher quality (lower CRF = better quality)\n\n# Fast encoding with FFmpeg (2x faster, requires FFmpeg installed)\nloopwind render my-video props.json --ffmpeg\n\n# Export frames only (for manual encoding)\nloopwind render my-video props.json --frames-only -o frames/\n```\n\n**Output formats:**\n- **MP4** - H.264 codec, smaller files, best quality (default)\n- **GIF** - Animated, works everywhere (emails, GitHub READMEs, Slack)\n\n**How it works:**\n1. **SVG Generation**: All frames generated in parallel (~0.8s for 90 frames)\n2. **H.264 Encoding**: Frames encoded to MP4 (~1.2s for 90 frames with WASM)\n3. **Total**: 3-second video renders in ~2 seconds on M1 Mac\n\n**Encoding options:**\n- **Default (WASM)**: Pure JavaScript encoder, no dependencies needed\n- **FFmpeg (`--ffmpeg`)**: 2x faster encoding, smaller files, requires FFmpeg installed\n\n**Props available in video templates:**\n- `frame` - Current frame number (0 to totalFrames-1)\n- `progress` - Animation progress from 0 to 1\n- All standard helpers: `tw`, `qr`, `template`, `config`\n\n**Performance:**\n- **12x faster** than traditional approaches\n- 90 frames (3s @ 30fps) renders in ~2 seconds\n- ~60 frames per second rendering speed\n- Perfect for CI/CD and automated workflows\n\n## Documentation Website\n\nA full documentation website is available in the `website/` folder, built with Astro.\n\n**Local development:**\n\n```bash\ncd website\nnpm install\nnpm run dev\n```\n\nOpen http://localhost:4321\n\n**Deployment:**\n\nThe site is ready to deploy on Netlify, Vercel, or Cloudflare Pages. A `netlify.toml` is included for easy Netlify deployment.\n\nSee `website/README.md` for more details.\n\n## Registry\n\nTemplates are fetched from a registry (similar to shadcn/ui). The default registry is:\n\n```\nhttps://loopwind.dev/r\n```\n\nYou can host your own registry and use it with:\n\n```bash\nloopwind add my-template --registry https://my-registry.com\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}