{"_id":"@akshay-rajput/ninja-canvas-bg","_rev":"9-8cd86aadf1152fe32ce01aa86f41c743","name":"@akshay-rajput/ninja-canvas-bg","dist-tags":{"latest":"1.0.11"},"versions":{"1.0.0":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.0","_id":"@akshay-rajput/ninja-canvas-bg@1.0.0","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"6c19af10bddcedbdd5caa0408e1379712eba510b","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.0.tgz","fileCount":15,"integrity":"sha512-BN0pS7IPWzDfxt9w/hHBTpPZohNuTmBfSxMdfez2TsmzfrcSe+9zsvPvcp9O7JPqlExuxytt+xKHpTcXRdiUBg==","signatures":[{"sig":"MEUCIQDT41ju6D33z21n26rkYO12rOlNxlTrd7NEbFo6Rex/JwIgQT6wAscReVlRKV1i/PkCnBGaaPiiFpkGfuZ+lNH+d64=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26501},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"9.6.5","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"react":"^19.2.0","react-dom":"^19.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/react-dom":"^19.2.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.0_1770959747839_0.4924034631223897","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.1","_id":"@akshay-rajput/ninja-canvas-bg@1.0.1","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"0c91d1c948b4ad899f905a68f4afbc6a546a0223","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.1.tgz","fileCount":5,"integrity":"sha512-axqAkxDzNxbGy0FCQfU6I7he80tfUV4ju+tB9efsa8R+qQtWuqHr05Z28rL/JRXBwVLqNBvDIEgfRjwt4Dv7RA==","signatures":[{"sig":"MEUCIHfmEYoLeN7fNQH2/DCic+kjqiWiGWUlvAYovHwaDxLjAiEAy8BRQpFILiLWuz4s5pTN/S69uQ+EM3+/pJIQaOWmqV0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20995},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"9.6.5","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","vite-plugin-dts":"^4.5.4","@types/react-dom":"^19.2.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.1_1770960753807_0.4196020640969029","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.2","_id":"@akshay-rajput/ninja-canvas-bg@1.0.2","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"bf0cdde7e20126fa253bdaf912ea5ae35991786d","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.2.tgz","fileCount":9,"integrity":"sha512-YVGvr/dWJTWZ/18N0xzJFFDzFt5LQqZANDwOBDR3/nZWNN6TW7IwrUa8TD5ADgtdQ5uKCO9NEukTNnugPre4fQ==","signatures":[{"sig":"MEQCIDBunCRKaA3izuJzvyx/wCTqdpKSc06RTjkBKOU3LXhLAiAprMHb7jEY4Xv2WVvXR+bnAINkbSUnBys8ya3VeAjPng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40718},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"9.6.5","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","vite-plugin-dts":"^4.5.4","@types/react-dom":"^19.2.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.2_1770961452913_0.22423696639272572","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.3","_id":"@akshay-rajput/ninja-canvas-bg@1.0.3","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"ba7b1ab6be0ea1ed327b8f6ea93c173b8d10f404","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.3.tgz","fileCount":9,"integrity":"sha512-Wb9FttxahOSI8O8STqDYsb6Gs9dWFZOvBym1M5TDrwztZ3NUGtr6Eq/pxIuUQjL9e1M+LEKniqM6YFSfvs/tMA==","signatures":[{"sig":"MEQCIQD+dbv58qX6RDAHfcQsLc8WivLdioQ80cyE7BT0/36M+QIfEtsWJ7mrJBuNgC/HGElAQ0G5QGoATV9pfIgIubHTWw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68419},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","gitHead":"47822944ebba59c2cdcd9a3eeeaf3513a1c9f047","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"delaunator":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^18.3.28","vite-plugin-dts":"^4.5.4","@types/react-dom":"^18.3.7","@types/delaunator":"^5.0.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.3_1771012727030_0.003940582133231008","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.4","_id":"@akshay-rajput/ninja-canvas-bg@1.0.4","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"ffa45032aa34860a809d8f9faca79d96b3e4d93c","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.4.tgz","fileCount":9,"integrity":"sha512-9/DC1z67vtgxPos0wg2dadZSGclZ8kWG2bQ0VnXi+qpV/KndzO3sHtmi/pNp94OGQhTbzz2hfULY/ByhoGgx/Q==","signatures":[{"sig":"MEUCIQCGKlxd76/fGnpofOsUjbcHQGL99nIBVESbaqrt6pwEpAIgOLdPjiAeQrZ8wk4yVM8B70FdEUzrxg+vbXy5ofHVyxM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73695},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","gitHead":"a9892509e76e5f672d51bb9cbbbb0da5951d509e","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"delaunator":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^18.3.28","vite-plugin-dts":"^4.5.4","@types/react-dom":"^18.3.7","@types/delaunator":"^5.0.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.4_1771099231075_0.16013681052459083","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.5","_id":"@akshay-rajput/ninja-canvas-bg@1.0.5","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"77b1eb17d3f3ad8878b311d38d7d30b43d8d4bcc","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.5.tgz","fileCount":9,"integrity":"sha512-1dsZguRBTEM8mCN8TDp28HbYbp5y1PrOCtqXBAPrsHGM157R4V94Tm/nTqhA6/00ansdHL4gfg57ZCRIaXSrzA==","signatures":[{"sig":"MEQCIAHba0sjgX+0qRLUxOQBRR9gl2XtyP2Hvu6lF+HVfA+VAiAxkFKvUtur0Son6fB3IlZxG2OcIGoMj0iwwW/tgfGb9Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75612},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","gitHead":"f1426ef9df156a08635f5f30d8a692742b65aa0c","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"10.9.2","description":"A highly customizable, lightweight **canvas particle background** for\r React applications.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"delaunator":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^18.3.28","vite-plugin-dts":"^4.5.4","@types/react-dom":"^18.3.7","@types/delaunator":"^5.0.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.5_1771099502864_0.19551714025007572","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.6","license":"MIT","_id":"@akshay-rajput/ninja-canvas-bg@1.0.6","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"a282f001b7b2de7af9261e71288c22e9e3c80aac","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.6.tgz","fileCount":9,"integrity":"sha512-HnYJdaG1BO+77YZClHhTjNWvK4Hl8aZjGh34BVrFOMYdSFF4vhorOewPbsEZodeqkjTv0msmkDN7N7IZXNo+HA==","signatures":[{"sig":"MEYCIQDwEtlrwTzL46S0XV0uOYjFTz0tUQCEzXgLoCXT6ULU3gIhAO7MMGkp7FdA279IT8cvXey7Fj+O06NqA09YeNGdne3w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75633},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","gitHead":"eabd22ba8cdd619850e9d57900f7e0a1560a3c62","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"10.9.2","description":"A highly customizable, lightweight **canvas particle background** for\r React applications.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"delaunator":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^18.3.28","vite-plugin-dts":"^4.5.4","@types/react-dom":"^18.3.7","@types/delaunator":"^5.0.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.6_1771100502349_0.21226677718597586","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"@akshay-rajput/ninja-canvas-bg","version":"1.0.10","license":"MIT","_id":"@akshay-rajput/ninja-canvas-bg@1.0.10","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"dist":{"shasum":"6e68b18783cae2a3b0e956412d29d731b0eb4aae","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.10.tgz","fileCount":9,"integrity":"sha512-CeEZWxrt0yf98QKdTViDXjU+zVTPhZZHySHMbVx/yPlgVWYT26UI8qsDEbL5emUu3exfAqNfEn+KfHJNd0Vx5Q==","signatures":[{"sig":"MEYCIQDJC3gT4A35+F4/AGn/3ocELqkzh+1FnVz6J759tbs0LAIhAKjzGrR2ULcQo10u7ydXNK8uSpBqpEvD4U1Zbk523zm/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76457},"main":"dist/ninja-canvas-bg.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/ninja-canvas-bg.es.js","gitHead":"85c76da0b904e65b39ca148c58f73d4b6dc6640b","private":false,"scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview"},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"_npmVersion":"9.6.5","description":"A highly customizable, lightweight **canvas particle background** for\r React applications.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"delaunator":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.1","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"~5.9.3","@types/node":"^24.10.1","@types/react":"^18.3.28","vite-plugin-dts":"^4.5.4","@types/react-dom":"^18.3.7","@types/delaunator":"^5.0.3","typescript-eslint":"^8.48.0","@vitejs/plugin-react":"^5.1.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ninja-canvas-bg_1.0.10_1771238141582_0.18233333181494493","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"@akshay-rajput/ninja-canvas-bg","private":false,"version":"1.0.11","main":"dist/ninja-canvas-bg.umd.js","module":"dist/ninja-canvas-bg.es.js","types":"dist/index.d.ts","type":"module","license":"MIT","publishConfig":{"access":"public"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"scripts":{"dev":"vite","build":"tsc -b && vite build","lint":"eslint .","preview":"vite preview"},"devDependencies":{"@eslint/js":"^9.39.1","@types/delaunator":"^5.0.3","@types/node":"^24.10.1","@types/react":"^18.3.28","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.1","eslint":"^9.39.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24","globals":"^16.5.0","typescript":"~5.9.3","typescript-eslint":"^8.48.0","vite":"^7.3.1","vite-plugin-dts":"^4.5.4"},"dependencies":{"delaunator":"^5.0.1"},"gitHead":"e118320accf4525ae3d4e151b9448a3355ea3a5a","description":"A highly customizable, lightweight **canvas particle background** for\r React applications.","_id":"@akshay-rajput/ninja-canvas-bg@1.0.11","_nodeVersion":"24.13.0","_npmVersion":"9.6.5","dist":{"integrity":"sha512-gnxi0rg3qmEykpncVH0FYiMGvZYjpIZptEINyX8m2Isc7oIwokPRSduSC5j2pZf8xaiRqkpD5wUmiYhnf/ssxw==","shasum":"47065632426df0fcbdf0941cc24afdfc99d642a3","tarball":"https://registry.npmjs.org/@akshay-rajput/ninja-canvas-bg/-/ninja-canvas-bg-1.0.11.tgz","fileCount":9,"unpackedSize":80178,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCywzaTz5oDstsCb99TSP7N7mX9HmOMkjjr2B/PSt4wlgIgRkAEJq3DutoVrDXfzZVF+S6aIMMR+K6ixQelNJ2o63Q="}]},"_npmUser":{"name":"akshayrajput","email":"notakshayrajput@gmail.com"},"directories":{},"maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ninja-canvas-bg_1.0.11_1771309880563_0.7008585229985782"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-13T05:15:47.570Z","modified":"2026-02-17T06:31:20.879Z","1.0.0":"2026-02-13T05:15:48.018Z","1.0.1":"2026-02-13T05:32:33.950Z","1.0.2":"2026-02-13T05:44:13.065Z","1.0.3":"2026-02-13T19:58:47.165Z","1.0.4":"2026-02-14T20:00:31.235Z","1.0.5":"2026-02-14T20:05:02.994Z","1.0.6":"2026-02-14T20:21:42.503Z","1.0.10":"2026-02-16T10:35:41.764Z","1.0.11":"2026-02-17T06:31:20.725Z"},"license":"MIT","description":"A highly customizable, lightweight **canvas particle background** for\r React applications.","maintainers":[{"name":"akshay-rajput-author","email":"ptwrajput@gmail.com"},{"name":"akshayrajput","email":"notakshayrajput@gmail.com"}],"readme":"# 🥷 ninja-canvas-bg\r\n\r\nA highly customizable, lightweight **canvas particle background** for\r\nReact applications.\r\n\r\nCreate beautiful animated particle networks with:\r\n\r\n-   ✨ Configurable particle speed & direction\\\r\n-   🔗 Dynamic connecting lines\\\r\n-   🧲 Interaction support (mouse attraction / repulsion)\\\r\n-   💥 Optional bloom/glow effects\\\r\n-   🎛 Fine-grained control over behavior\\\r\n-   ⚡ Optimized for performance\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🚀 Installation\r\n\r\n``` bash\r\nnpm install ninja-canvas-bg\r\n```\r\n\r\nor\r\n\r\n``` bash\r\nyarn add ninja-canvas-bg\r\n```\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🧩 Basic Usage\r\n\r\n``` tsx\r\nimport { ParticleBackground } from \"ninja-canvas-bg\";\r\n\r\nexport default function App() {\r\n  return (\r\n    <ParticleBackground\r\n      width={800}\r\n      height={600}\r\n      backgroundFillStyle=\"#0f172a\"\r\n      particle={{\r\n        count: 80,\r\n        radius: 2,\r\n        color: \"#ffffff\",\r\n        speed: {\r\n          x: { min: -1, max: 1, minAbs: 0.2 },\r\n          y: { min: -1, max: 1, minAbs: 0.2 },\r\n        },\r\n      }}\r\n      connectingLines={{\r\n        enabled: true,\r\n        maxDistance: 120,\r\n        color: \"rgba(255,255,255,0.2)\",\r\n        width: 1,\r\n      }}\r\n      interaction={{\r\n        enabled: true,\r\n        mode: \"attract\", // or \"repel\"\r\n        radius: 150,\r\n        strength: 0.05,\r\n      }}\r\n    />\r\n  );\r\n}\r\n```\r\n\r\n------------------------------------------------------------------------\r\n\r\n## ⚙️ Props\r\n\r\n### ParticleBackgroundProps\r\n\r\n  Prop                  Type            Description\r\n  --------------------- --------------- ---------------------------------\r\n  width                 number          Canvas width\r\n  height                number          Canvas height\r\n  backgroundFillStyle   string          Canvas background color\r\n  particle              \\_Particle      Particle configuration\r\n  connectingLines       \\_Line          Line configuration\r\n  interaction           \\_Interaction   Mouse interaction configuration\r\n  className             string          Optional wrapper class\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🎯 Particle Configuration\r\n\r\n``` ts\r\nparticle: {\r\n  count: number;\r\n  radius: number;\r\n  color: string;\r\n  speed: {\r\n    x: {\r\n      min: number;\r\n      max: number;\r\n      minAbs?: number;\r\n    };\r\n    y: {\r\n      min: number;\r\n      max: number;\r\n      minAbs?: number;\r\n    };\r\n  };\r\n  bloom?: {\r\n    enabled?: boolean;\r\n    intensity?: number;\r\n    shadowColor?: string;\r\n    blur?: number;\r\n  };\r\n}\r\n```\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🔗 Connecting Lines\r\n\r\n``` ts\r\nconnectingLines: {\r\n  enabled: boolean;\r\n  maxDistance: number;\r\n  color: string;\r\n  width: number;\r\n}\r\n```\r\n\r\nParticles automatically connect when within `maxDistance`.\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🧲 Interaction Modes\r\n\r\n``` ts\r\ninteraction: {\r\n  enabled: boolean;\r\n  mode: \"attract\" | \"repel\";\r\n  radius: number;\r\n  strength: number;\r\n}\r\n```\r\n\r\n-   **attract** → particles move toward cursor\\\r\n-   **repel** → particles move away from cursor\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 💥 Bloom / Glow Effect\r\n\r\nOptional glow effect using canvas shadow blur:\r\n\r\n``` ts\r\nbloom: {\r\n  enabled: true,\r\n  intensity: 1.5,\r\n  shadowColor: \"rgba(255,255,255,0.8)\",\r\n  blur: 20\r\n}\r\n```\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🧠 Performance Notes\r\n\r\n-   Uses requestAnimationFrame\r\n-   Avoids unnecessary React re-renders\r\n-   Optimized particle updates\r\n-   Efficient line distance checks\r\n-   Optional Delaunay triangulation support\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🛠 Development\r\n\r\n``` bash\r\ngit clone https://github.com/notakshayrajput/ninja-canvas-bg.git\r\ncd ninja-canvas-bg\r\nnpm install\r\nnpm run dev\r\n```\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 📦 Roadmap\r\n\r\n-   [ ] Gradient particle support\\\r\n-   [ ] Touch support\\\r\n-   [ ] Preset themes\\\r\n-   [ ] Auto-resize mode\\\r\n-   [ ] Physics-based interaction\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 🧑‍💻 Author\r\n\r\nAkshay Rajput\r\n\r\n------------------------------------------------------------------------\r\n\r\n## 📄 License\r\n\r\nMIT\r\n","readmeFilename":"README.md"}