{"_id":"@grandeto/vrchats","_rev":"28-685b41aac45268071fbf9536b203719e","time":{"0.2.1":"2021-10-25T08:22:21.508Z","created":"2021-10-27T19:04:15.455Z","0.2.3":"2021-10-27T19:04:15.697Z","modified":"2024-02-11T11:13:15.641Z","0.2.4":"2021-12-19T17:36:36.599Z","0.2.5":"2021-12-19T17:54:07.066Z","0.2.6":"2022-01-03T11:31:01.208Z","0.2.7":"2022-06-12T23:40:44.182Z","0.2.8":"2022-11-07T22:38:00.405Z","0.3.0":"2022-11-16T22:53:06.143Z","0.4.0":"2022-12-21T10:56:35.430Z","0.5.0":"2023-01-01T21:55:43.777Z","0.6.0":"2023-01-01T22:30:48.421Z","0.7.0":"2023-01-02T20:27:17.710Z","0.8.0":"2023-01-16T22:03:41.092Z","0.8.1":"2023-01-17T00:17:30.840Z","0.9.0":"2023-03-31T22:27:26.410Z","0.10.0":"2023-04-09T12:48:27.086Z","0.11.0":"2023-04-11T20:27:42.610Z","0.12.0":"2024-02-11T01:08:05.825Z","0.12.1":"2024-02-11T10:12:57.441Z","0.13.0":"2024-02-11T10:53:34.981Z","0.13.1":"2024-02-11T11:02:27.338Z","0.13.2":"2024-02-11T11:13:15.462Z"},"name":"@grandeto/vrchats","dist-tags":{"latest":"0.13.2"},"versions":{"0.2.3":{"name":"@grandeto/vrchats","version":"0.2.3","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"07766bfde1fea41e6ee94ab993deabeb5d8d028b","_id":"@grandeto/vrchats@0.2.3","_nodeVersion":"14.18.1","_npmVersion":"8.1.0","dist":{"integrity":"sha512-CfFjUzeumNmAm5W4z/Qw+4PLcc2RIzbL4UZ3pxuazYYF7rPJGSzdfBDK/3Nq75VQghYzVdYUxjSBi6uCtelrag==","shasum":"42d58aa72678890e7eee9534697f0af91e95d482","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.2.3.tgz","fileCount":15,"unpackedSize":760894,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxxORENS8hW7G/ir0nR8MfdZceT/zKz2M5Pm2QvHY/igIgKQIYG/GQ9fVaIiubOoQX7Kk+/Z0QtgNyA9Yy65/nlp0="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.2.3_1635361455508_0.8524011770663928"},"_hasShrinkwrap":false},"0.2.4":{"name":"@grandeto/vrchats","version":"0.2.4","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"d5877e5a893f3455bbab84355bdf97630c29fb8e","_id":"@grandeto/vrchats@0.2.4","_nodeVersion":"14.18.1","_npmVersion":"8.1.0","dist":{"integrity":"sha512-qF4ZOXzah2lODRws4F205uztq83HY4jvOZ3HT0Ee/Xre9KGbsZz2ydKpSz7c87iIVaPOg9J5dQSPzYviExPvjw==","shasum":"f556c15270b9ce938dd1982f21afc91f8b4e08cc","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.2.4.tgz","fileCount":15,"unpackedSize":760894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhv22kCRA9TVsSAnZWagAA/mkQAImtTWldqngXn43Ycl0q\nIU/Y8A/UoCMcIguZvGINcr9dSnAazTRFUCXwP5Ya99mfn1OAdCgsY1HeRD2Y\neZjiITg3YNA79hgv2o4Bl7gFvwtW4ei3crePMvwpOWbJ/BVDblml2dItkJPU\n+1ZPqurxBhHAJNpQIq+e7/w59lVm7YhF9T5awvM+D3/XRh1V9fcQsdAeyxfL\nMoolttkflsVMp3I9IJZfwpYmTIOoaY+UIhGOB77jujIVIUsU8/CZ2fRUJbO+\nwfBk3ecR8Mm/Mp8BOja3P4b85bx9zi5O7+g85jgBZYGWspHGNjDJDUNMd2om\nLoe6PhO3J/ut7nvzufu5Y0m+NjRfNUQf3EeYObVrg0Cpxahs/RgMBAx0T82W\nJrc3q4IBDXKb2yA4A2qaXyNgYn/t7RTLOd8TeEw6ruRworywHH7mQWwLE8hY\n2BVKQivVcvsZChBpA1QhW+tf22A+PkGVcw8V039KheemTg6vzC0/g9kPl4Lq\n36t6YUBG78BRA6GRd1thkoT5+VPF+fzEfDthXuCgNAp7HJqiNBfjKqqLPNwQ\nsAcjQoo+FPzfJGQRf+hj+vs+b20rHg2XZdFZSZazX7YloPI44mKwvx9Eo1Ev\nPl9G3J90g0RuzHjUTuuBaaSQHEwAlU+ipukh2GpMTyoJSNom3k8vcKw/6oDT\nJZOh\r\n=CpHY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHE+rYDNlbYGbrfWVyspw5+kUeaa72c7ILSqTqnMpq1YAiBBmsMx8QTSDyzqltpyOQXUaR5FUys9csi+kibR2lZocg=="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.2.4_1639935396424_0.0689203732883199"},"_hasShrinkwrap":false},"0.2.5":{"name":"@grandeto/vrchats","version":"0.2.5","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"06f9460a92d1b31810847ff43adbef2d49374fee","_id":"@grandeto/vrchats@0.2.5","_nodeVersion":"14.18.1","_npmVersion":"8.1.0","dist":{"integrity":"sha512-Vxi+rx8fnB/T1scHGFcRePIQPt1UQRF27zVICORRR/dJy4GFqXjWSc3CKoUbzjeMJGcOSHUFbx05YCGZs0Mn1Q==","shasum":"8700427056bd4163190669164c2029db4495d95f","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.2.5.tgz","fileCount":15,"unpackedSize":761957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhv3G/CRA9TVsSAnZWagAAo3oP/3qMbgT5yU2+XoIU23ui\n/0qzioiVH6Ekwn84zXhlsPvStq9ODbb517nidF4qdjZGB+iyVIQCXYzzKWFQ\n9GaB3+bjwx8Du7wXRNsYGXp4XFP/7hh5FQGIL0V2xeDK3/QH+/lb2rxm4LFA\n2oG5NOMmCXNa4zou/i+oE7dEfHsS42nBwOtW0nitxa8WHvchyXvTMJluRNXQ\nxMeJUTE+WBVKB6oVoVnCXWJMSzayUeRuLu6kPW2Le7l+eRl9o5m2HqZN/o65\njwn3ePeL6caEBS9kxPcEUPbMRVOhzg8OTWJ8thcB1Kr1QNQ6yxJ0WYhifbI8\nlEVXoYeeWSIKiVtrlwolZvHSJrzC9jvMkhZ3H4Y9LfiC6iMUHDWedTfby/lO\ne0rixy4KATmav+T58Ff2ruxhEWhsduV/3zGrkNkCDUedlxh4Su4kkBUoptuB\nb1ypW9P1Em8uSfZi5Ssqmi2ATmIXy1PClg5GcsiT+XMd+eJ08pVjPKUu0HW/\nx7mtwekKcp/+IXDk0pVyMwAzwWIbeI6Lm0Amomitfawc++K7QX4NrGQcm22L\nXPSXJcAaYa7CIpCU0k4Y5cv7rGxjUo2ULzgwZH24rsxidEPWvilmi2rGHSRC\nkgioWrHAaWB/sRHzkRyTPf4y0inp4k8HPhtZlybB+gSMC/yZjM4QIeoAbYnY\nGx1h\r\n=RDUg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFIse6Nj4PLyBnftEpuA4lLOWUZYqEGbWbrgYRJalLrPAiEAsUhYFWRKWtaA56hwguVuWlQpeT7tytjvB7IW3OkPEvU="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.2.5_1639936446845_0.42498267502731024"},"_hasShrinkwrap":false},"0.2.6":{"name":"@grandeto/vrchats","version":"0.2.6","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"dd9ffb05b57a2932250e0ac03d0d8fff3afc0306","_id":"@grandeto/vrchats@0.2.6","_nodeVersion":"12.22.8","_npmVersion":"6.14.15","dist":{"integrity":"sha512-G+90mkLAs2P/zQnMfEGMp2KBg8XBf8bJgyIUTBKI9d4TVeUkUFcCCk8Sk4h5c5dYo7O+51vMRq/PXNl15mEm4g==","shasum":"d5bd006182ba2324314354fbc6c4bbe309d934ac","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.2.6.tgz","fileCount":15,"unpackedSize":757916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0t51CRA9TVsSAnZWagAA3tQQAI7YVAW07k12fVNch5fk\nMFZB8MWbO7I4bSgJXJKTUlZmR7v7q/TWRtZtUmDfUpvt8kx4/Dc8J6xDy9tl\nI/c+FbCUvHYFLv0ZwA+ULJW9TfDkIDOn0HQ8sQQt6C71tvCHi9Ub4t5H8OC3\nrab0s8PQFbpX1ADZMhfe2FgrBF7aUzt7bOaR7m5zkFm1F6zRUZrRI/ct8hjp\nx+l9pIC4MjJdpbcA+CfXiI6+Pnqv1RHC3B8G8KNkNSt3Dq4TXkeL8A4rObD0\nEKv1a8NFnPS2ZloCGcW0ND1jbbhcCFEJAY1PfnSfrf+2Qh8J4B7mPsj1tgUJ\nO33fo/jgo7nDM06kt/jLzs9iTyGBASasz5SKslYrZX3EgU4f1329Uls3QIXZ\nb+5rk/vghqv1ClSu8wDpaR10NQgJWHYnitewS0itMmbOQIhx/km0i0XtpLRs\n7gTyHi29/3ao1mJuR6rpKfAq3oWVOjW/8RkYrU/A++TFnu8QZFNld092LWBZ\nzafhggcba+x2p8b7npwyattGuqM2962RJ6xTexl+3kqFBmBW79kNW43Y2nGk\nZ1nXHcVfPsyhLRTnZVshf0A9i6ebpSo8IByumXAXvbvGNRkNDR8ZqIy++z4m\nbduttwJBYIgysnsW9xXs6uxV8zVPwQNCVOQRQ3IjUtt7lsd7R7XiaxTStqzu\n9cKa\r\n=OnmH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8Wa90rL9d2+Arh8wA1pwxCcxu3zV4JAMY18ecW/2FaQIgUBhHXyiZ5BsatxFYPzczoSGsC/LbfZ/3oLkx6c/ieoo="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.2.6_1641209461032_0.03930049012553605"},"_hasShrinkwrap":false},"0.2.7":{"name":"@grandeto/vrchats","version":"0.2.7","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"819ddd288926d8fdf5aae258123321defba1e97c","_id":"@grandeto/vrchats@0.2.7","_nodeVersion":"14.18.1","_npmVersion":"8.1.0","dist":{"integrity":"sha512-Oo1BiyDcRdS4Ogyl/V9Dwj5Ct8LD2nEQ9af7j8psNkJBYFvZ3STYKc+KtCawRo2MfTgTXk66y+CazrNnpHZ5lQ==","shasum":"a5cf9fec189161a78a6dbb6837a4510a46d4b31c","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.2.7.tgz","fileCount":15,"unpackedSize":758412,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/J3V0uPUP+sjSRhKs6jEYU4r/9QmlzGOdwfnWZAJpWAIgbpMCtwpUeH0aaLnyFGI8Z8/0l8YFNevjaxE4loGdJoQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJipnl8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrsuBAAg8dKJICOV3oAukuHht8R9C0vpAJGdMuqHuVQG2vhj5O56i1o\r\n1VO+Rg2zNONLdgrbI6pm9DqT2dTqA78oIhOk0Fd0eHu7hUgJedI3UWE+OL3C\r\nI1/+udqlSuJ0Yvc0VVjcdRrC0WGmAowqzh14AiZdSWy+wADHU0AjxLzwKcj+\r\nt0i2C4SZpEbKoBi7ekhki6vy2KdHKU2Q/aBOrQ8OYNlMQS5F60zOMUUX9n+E\r\nZCKo4FfqvUXcM19B7Qb+1OakV5vgPPAB7TQqeq9NF0+XUHMlvZewRim3Qabj\r\nsE3zn2ISGcJDMtGJpU/6Ou9/ujsMgvZDth25V+WLQcosLXgGxaddoG7vHtb4\r\ncHhFV7GnUUzs2LULoV9BmwzroK6vDo8flTcl6kPE80RR+pYhUKiCKlIYTqU6\r\nD268CLzliatVBQY1BuMjsz081tgKbZphg8of+GPgEN+21riMrIWzoKeneuDK\r\ncBU6QXYUBUq4m//QH/gw2rC2FZkaa9vcG5qJFbL9m53yV7D0L5j7jSWMtNsy\r\nmlJ9jENVh5d9s1nfkK2xn32inR5n7gx2YUyvIKTwaM7vGwJ1JyZZN+vUB1zi\r\nVInbkGRuLr9O6MGq1s7tQnHUp0iOfwZTDk2Xm98BkxC7IO6q1L3eKLLw8lgN\r\nUxe4gt8Hwnj4OACXOTCtOWfBMmdUujG0ifc=\r\n=f4EN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.2.7_1655077244009_0.6239347793475116"},"_hasShrinkwrap":false},"0.2.8":{"name":"@grandeto/vrchats","version":"0.2.8","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"ef57376e4d6c42d77d062b34b0d2437f84671e4d","_id":"@grandeto/vrchats@0.2.8","_nodeVersion":"14.18.1","_npmVersion":"8.19.3","dist":{"integrity":"sha512-OvYK3Onsm5W3XXc1xZh8+EwuIR1mqPZiRDDX3sIACDumbtXlUD6Fleslbp/djTH/qigWpEMTlKiX6TZJ4BoW1g==","shasum":"32672db54fd418fb7528ac032216d3c155706625","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.2.8.tgz","fileCount":16,"unpackedSize":759708,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAyA4In95sYh/QxLr3lHGUusLrR0xeB159yVETbQEvPfAiEA7j63oBfLuf0cMXuEyopPE7cdeVeEimx8V8a4TiC5xI0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaYjIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+Ow//brFdaCL8tp98ThFe/WzFUXBJWeLC8N7Yx3kR7EzWmn3OLn7k\r\nTOfgIS0kKRjWT4UVD3H8ZKGeYmt+SyFtT/SorvI3WJ4M6LeZrE8Fvq2dFg5X\r\nzkcHNHDh2o86//YQlp4oeyHCTFe9ZTO4ueUiw7yqWGKgCC4DjIwRIRA99hsT\r\niqmSd9CaFMwMdLt3ct+jm3yu7rn8NvDJ8IlePPLh+ReZJf9ZWkgzbfzhOLHt\r\nESmcSu2k+ITkEjF1aMPwYZ/n9NzoIJjSXaTwxzrZq9cNZSq1sW1zGhpkDc/O\r\nz5gXskntep9+SZvGuw7yfSDnVD3P9yUyl8bcV/rG3GFOIQ/BsLagjtFsDuhE\r\n4QQaAmjbgTTgwBGtGWMz9lSjeFP8OiQA1GhxjQyg2e9dMZUFlSMLx8wGeru5\r\nJRd6EghkZumxRlUTd6Pz0yOkwBeSFeDjPc3sHdhsPN4Wrluz8DGJoMy2/rci\r\nVFy9G39zmwnUgWtTQNwz6+7zRVOyBOXqCa0JY0wwnMltgLAiupK23h0zoX1Q\r\nvcmg6dmYEK1V4ft3B1NcVVfuY2+mfttxl81nWlj+GUHcGwvMXnCtDdbofGAp\r\nziGwjYGT+iGhbWgkSH+J+1NqqLHsYfDVT1FWAROobmkPhXq1OLmGgjBZdBaF\r\nOyUa7Qf7ELiSg9RwLsHJgH+a6x9XUJb/WGc=\r\n=8zVI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.2.8_1667860680215_0.42991189212072034"},"_hasShrinkwrap":false},"0.3.0":{"name":"@grandeto/vrchats","version":"0.3.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"87167cd7d2f7653ab0abf49d25951172ad02ffd2","_id":"@grandeto/vrchats@0.3.0","_nodeVersion":"14.18.1","_npmVersion":"8.19.3","dist":{"integrity":"sha512-3fYGPAXEX0wcovMQJSTpustdh3OgRiT9rdpMFiiT3Th2vdtoOPV7xcfO4TZryCSwiKX7Gmk6S8GcIjuBgmgSnQ==","shasum":"9680b936a3cca03cbed5b07672ab706546587d58","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.3.0.tgz","fileCount":19,"unpackedSize":764512,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClnM6CsoRC1Ke8nU0N9NgfS3jF81WmHiE8h4z5fznc1wIgZHxrsZOAT3vZaTXbNUGWxCcW8TgdW7MyUV6QgRfEB8E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdWnSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRGw/8DL4kh+sbLtPPBKLs4wpSoTJtX/MHzxhzaIXqHkTNCkMeUkSS\r\n/sZI5zzKiYvmiKVFQSuS0zKs5wQ6bKWqaW2Rf7ZnmcJ4yAOfzQfH/jyR7zvT\r\nCiQFZuqt7Cp11LwVDivUKHiJsHSHwCcpzqdf3im408LB2mkiBSoSJtC1Vmxj\r\nDYSoZVrnrRE4E3VY2qlNUYc2B8X8IRPDCHVJLAKTOxiuMXqw/CA7nvqNVRzx\r\n6PlAMBedTSSg54VmXtBPdJAO+3l84MTb+IyzM6O7awrxB33I+hcdQ/nZbcyN\r\n71ju9cJcos0vEa1FeBMRZPPDywwL3L805XccBOQxLzFAJGtFLpQZDs4Ak6xE\r\nPW3I3pju0l2p7/qCS1uktYgGIEZPzPsSQ8Fp5D6Jdc8ylmBa6oho9zgEoRBS\r\nGnOATqsCLA3B3ufSuJLtfLAD/vq0vXVj7KPXxvHA6+Myz6nNUzBpv9axkzJM\r\nngpH4Grek434CaXMuKyXdwaPz04iuJ/sjdcKkjvuZsKVFBadwracT+WdDn5A\r\nMcHHz/1I2Kg/GUkEijVZKKYLKU20oxTk0CO3RZiy4qWQmNzf6IuOoyK1cZut\r\nEHzz9FUmZ+/xwwjTNkPszcYJR47FHDS31CnvHQw7byvjHRuULhTYdzmy/NgM\r\nFGyt6FPTL/pW4QSe7IsqKuE2doVe3eeA+Aw=\r\n=WF8M\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.3.0_1668639185929_0.5336775224505823"},"_hasShrinkwrap":false},"0.4.0":{"name":"@grandeto/vrchats","version":"0.4.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","winston-daily-rotate-file":"^4.5.5","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"e883742a62dfa23d861d5bdd6921654c1af41d36","_id":"@grandeto/vrchats@0.4.0","_nodeVersion":"14.18.1","_npmVersion":"9.1.2","dist":{"integrity":"sha512-z6AuDQZNELXiynefwrWJ0gkDwFCb/d+WLRLl+7NEgFYIitb55qVbzrt2vgCZkBKw6qtpoJKQ+SW7zMQwvI83Fg==","shasum":"40cb2578e1f4aa448c72f3116da874617076f67e","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.4.0.tgz","fileCount":17,"unpackedSize":751589,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAOtEoJBYqTqcs1jDaQdqYTVgm8XMKb+xdWSM3YLvtBrAiBpgxTGvYGMHITFlKTYC7OMHKzs0s8eE+hltEbbtlbCVg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjouZjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpaGw//WFHRMHHI8nDI2VhfXxtxZg7XGNzjiyJ73+SjPsdXwvoLYoEV\r\nGPtX04Sr4V2XAbF3GnEUNcilknRzJXo47Jj6+xNImcQSOU7T2Xmf2xGfE7Nw\r\nRj/8NEYtvOX4n+LuI5BBqkROZ1azgYMNK1DRDvbnrS7AZa7qLlBLU4od2tau\r\noTzEJnhgNs+mWRFlWYLdZYiKig9TxQwNpsyeLy3ZyKN8AlbjAVXOtQKjfG87\r\n8drN0FnNTy6qjU5R/Tg7KUimW3nVAfZCUtI1hIZccci5w1iREoslY1Ik2eve\r\nxkd/OwhFkhnNm42NvzTGC08N4pyxw/A563G/2hI5IS3/54Qoqrw4SKzNoU6v\r\npCGYg/3bEW/+yxNQhoVO3bj0LSV9HAzUTUGwpJpSQHa3TAIpWJwzLb+hKaSX\r\nVdZunaxgvJBVB+D5L8vkwDnd3xFiQolXPQdfgYfz1SZDO1JDvi/J4yKzTG6o\r\n+Od/Xgu8egJgGwz6yJMjiNBrxZkWGjjuFlOW+AnGjKkcwqCSARD3PaVCYQS3\r\nA8hmx+nUueh4DVBumnlDJTxFnAXrMzhzRk/uBRk154nPO5QiJPtP/74eLZ6Q\r\nleLCofqC8BCZwqt236+/6ZXlX2b9AaiFQhFGebeSDaxcsvkw6EIMOCwlwnZs\r\nIV3qU1sma7BtOLiPJv/zIw9HrW5JqEgGj+0=\r\n=UgST\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.4.0_1671620195202_0.9884622525294304"},"_hasShrinkwrap":false},"0.5.0":{"name":"@grandeto/vrchats","version":"0.5.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js","dev.run":"docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"fbbe0fa4021d79f5a0ea956d202587184f7dc6ad","_id":"@grandeto/vrchats@0.5.0","_nodeVersion":"14.18.1","_npmVersion":"9.1.2","dist":{"integrity":"sha512-oY9da89i2Qkad1Oe1iqTwKEWwwb2u+J7+6x47Gl8Cg6SgiNStYZrH/jxDLqKqDuYTtzu2vN6EI6SbY2UUPYW0w==","shasum":"903d95b019912441c2a5068a1a2d6b80821809b3","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.5.0.tgz","fileCount":17,"unpackedSize":755177,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE79L4KqQJ+nbiPvO3yzEYxbPDhRg1didY+ywuMxhmCxAiEA6L+C/z8niUeJxD2grk2y7qAlvvOhmWcwLCMqDmVI9y4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjsgFfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo4bg/+OglKzLgp6yL/xbvHsrsJioNT4/rybiX2SKz/hfYADntUkWeR\r\nLYYqmy/VxmU+/kQxEZN4gDjyTu6sYmyg0LVNHMfRGuJbQFgmRRCC20f8xc9/\r\n4h0EWUVG0dBhNO7fR8AVGMHa6VHVivn9vqvLGJtZN+I7/4jmmBn1p9UIKucj\r\nHYu+lEYB/uh88a8Eg6M9sPPrmi+mLdceFOjKxgnqwYefrURR7ylHGSQ+RM/G\r\nI1nPPrHH1dmLToQC2A3H9j8dvGkNeOh0nZhiK/nRDQoLQ1K+NMw33YD1BaAI\r\ngs2CjMqPQCVRx4Y06nz3iVxEHh3eJpFW4UH22601weLG+IoYdoDoxGqCLeM3\r\nY4Lk2R/a5PRY7bvxm+4pdkibfWu9nexf0N0su4rOIZ/tBRSP2BNfWXFsk/qk\r\n0iNYdbXxSXS9PcWF49O+3mDp9VK3/IE/VRB5FoE/g8PubBL7+j4yFtbID4pd\r\nstLlMN6oOvYzx1rZis9Hr4PySNdqV3tranUhOMDizSKgkRiwDrzhYaB6IZGR\r\nzZirP9o3Yvfr8D+WjzuEj7PoVyPAJUEwb1AXOhE8FrJ7iVoiXqSGF9IwLApQ\r\njNoWHC2jKnmXlKOx+D2aO5PSE+L7JpguM/9NzxpCiNvrTK6cKJuCM688Mr2g\r\nehzSKHGNx8z7bKLEnQk3LKlWw+n2qiU3idc=\r\n=NMZc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.5.0_1672610143221_0.02270559569372521"},"_hasShrinkwrap":false},"0.6.0":{"name":"@grandeto/vrchats","version":"0.6.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build:client":"browserify client/broadcast.js > dist/broadcast-bundle.js","build:client:min":"npm run build:client && uglifyjs --compress --mangle --output dist/broadcast-bundle.min.js -- dist/broadcast-bundle.js","dev.run":"docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{"@babel/polyfill":"7.12.1","broadcast-channel":"^4.2.0","browserify":"17.0.0","socket.io-client":"^4.2.0","uglify-js":"^3.14.2"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"55e73af54dfa704d8c7fb26911d6b5a4c419db12","_id":"@grandeto/vrchats@0.6.0","_nodeVersion":"14.18.1","_npmVersion":"9.1.2","dist":{"integrity":"sha512-zncsk32+7xk+QUpRraZxZ0qIdK0bm6bm0m13LnEwUjblIU83T335wbSsulOnc+NYSLZkKW7Y5dDpemfh/MonpA==","shasum":"8a9f110f74c76aff3cb10809e3dc3c7a4522edae","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.6.0.tgz","fileCount":17,"unpackedSize":755183,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwv+UDViFZEcBtp7M8CHrM8hYMf0PjQzjEDy9JmsbJegIhAPHxAg4cqC/WhitdnD6/4o6AaWKXLkcI98bwwZL9wy/y"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjsgmYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr/Lw/+OgsMYFk4aVjgfdsGYbjT/s7xQDuitjsWB0eCbKEG21zNaIC9\r\npy+BPs/J8hySlHWSvEB7+4VF/mZcecFn3FrRPV5wDLVtyZG5DWXvdnv/lhWm\r\nzCkBX9FmsFvf15kQ6yvMK/BDDQPpKwk/KCOM4X56WJt6HK/2F7m4Z5+lwWry\r\nsgHqG/ucrdpIYW9iR965DgBKcDAly6L+7URxx3sMegAsgBxpJJivPCqggP95\r\nBGFdNuFTb0nJwrrkDvN5az1bHEdcxamcD4fjKprwfjVB1tFSz8OWz2ctjoNn\r\nEAG+3/vmDyINtaLmQtKQaC7h+byVkmP4Vn0lrOofB2dUF+AEzfoe5KMAOOnH\r\n6XF8KlJBhkRZ7fP6tfbapbMNyHoiMuYqVuCmdXdrvgoYQj4fhGd7pC+Ovt7R\r\nmy47EI5b+nJDJc/IUcsGveYkD0dtd3ClAKzunkGqV7q0xa1zp8BtzloBjYsn\r\n7UiivAaYI84xCSFGmneRCklxDnXJ57ppKlZp812B6xyIp1h+VpXCxcPAxo6C\r\na2qBeFHU4snfWO0rCQE8aIrk6jABJvj2XbgcVaSvPLRQr6+ktNyE8ZdGpwJM\r\nWymJ0L/q3YW0X2V2q/CRDRAOa3NCPWiXa4hOE5R8IPQ1Z3+ldY//GQslfIVo\r\nemYU2HSEhdjB/vwMPyvi0fQbnPs4HCMZLog=\r\n=R9gq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.6.0_1672612248220_0.12266664024154417"},"_hasShrinkwrap":false},"0.7.0":{"name":"@grandeto/vrchats","version":"0.7.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"9c2d4668465e82f06492931b63360f9e2ae6a0ee","_id":"@grandeto/vrchats@0.7.0","_nodeVersion":"14.18.1","_npmVersion":"8.1.1","dist":{"integrity":"sha512-SJ2xu2uxy/lTBclkv6KW+MnM/QkfLv9wQ9e8Fj13Nax1xN9U3OS8ARdNG5VK/TIrdlm6jgpJQKHLBC/kEWu0hA==","shasum":"bdd7f9bce86cd8ce41e24d750d35592fcfdc0132","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.7.0.tgz","fileCount":15,"unpackedSize":29262,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcBNihm+lWzvDoZYinl0A+tlFcwlzFub5XX6KnRyHSdAIgPKk1zjOSG55PtDiBmtx/ylaCTCc/wA+SErKkxDu9DBQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjsz4lACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/rhAAk+v6Pd7+7cdyijcOmiOPj8/cI4U4P0jJq4m1zGAWDTUGMtz2\r\nunEw86tkNp4IjY5xTJGcIhs048UJI7NS426VOzaGB6w/QqiPlS39/esrULss\r\n2SppDKDKnOQ+Nw1T8seeBhTyFoPpPuORQfTfZToh7SrW79+sxaCsqJAahL5x\r\ntuhvwQ4QofNLI77RNP/J2siqAvTsC6zY/LAboEG18DoIi8Fa9EQ9sh0Adq+c\r\nac5EFLJKRRYnLJ3RHopO8Qtsc2DctQk9WD36BuSYv5M0QXleZelAgrKHtX7T\r\nICDFZ0lSGVIjsR9RpsjLc4BvfBQef2xCdFam9Vqqe3b4sx3OVgcWhwREMuSk\r\nP+xlOQOU39iAV6r23LaIBW8uWYh10et/E7TQGUluUJsWNlSAfiDXAkFM+jKr\r\n5snOtxr4MQ5dSahH4+n9Mcr5njWHtkSrnKsKb2Sngo2TLCu1fXLE6ZO2mP0T\r\nmi44plNnpaJxh0zoszugsRGD5Ja0MBFUeEjJfj0VAtCC0F15cKJI+ZTwbnsy\r\nuQ+oULwMCfDBoQu8b3y33nzL7s+2yUhqDGzwDIcU6ZngxU881Dqy/gDjo5s6\r\nzn44DsiAXyoV3vs7aOYXN2Ce98bfoHHOhLJxTfY3jeuEn0tEgsXEb0NbdO8h\r\nEE3z9Qgh4Tc3aQqEZxLDFbmIBKrE0Y+pFvM=\r\n=TkwO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.7.0_1672691237515_0.11830799099567901"},"_hasShrinkwrap":false},"0.8.0":{"name":"@grandeto/vrchats","version":"0.8.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"635ddcd3697ea7122122a4de070cb262c88b21a5","_id":"@grandeto/vrchats@0.8.0","_nodeVersion":"14.18.1","_npmVersion":"8.1.1","dist":{"integrity":"sha512-v8MmfBD8IPgkEMT6Yf3e5y2XlExyrx6D1+WiW2Bcgp6cUL+sL4Cv3Z2G4URnlfwtB0skVBIwUlDrZGP5pzck+A==","shasum":"592851c8047c01ea8e8b737b0acae4c8dbbb2f05","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.8.0.tgz","fileCount":15,"unpackedSize":30419,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE4OKUu21ehsSHOw1vPlJJdCjhi9hBN3MgHmyEHks8C3AiEAwngNr5nWiPB7kQzXOFEavBLvQIK96DWm5vDQXqYUQOo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjxcm9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpTCA//YIHTPRMMerX3FyZQDtnCLftsAeJ/s3DgSZJrIzlL6fyizZH/\r\n+EQbfcp6drTYPurwS+3DxR1X9Ef6usrmE112F4K9y4VCqmwoMtVAY6QdEkY8\r\neMj+eHzTaNOqSYFBZQW7fE4NmG2TtLSPbEF658KDiIvx7JB46OOlNME31fiQ\r\nTXN1O3caQAQ3kPRA6YOwEH0BiPi68Hy85h9s+g8VxL8LxsVLfU+yzvm9I2Sv\r\nNUjXQyxdSHkO8E4RUYz0a6nA3nF2TeXHcCzuFsNggtVBWmATnc+DiI17V76+\r\nYH3Z79daJEJaGT2/AGaWjUHJfldD9OpVIuKdm4u5XC97pi+7Z6Ggmz7pUq+F\r\n3kxIeXFMqpTgiH+kCYGM9A1LOC6ozLhef12c5Jg+GCHEHLxY5rSbsN3EBFqe\r\nz/q8t7wL1/ImUEugypw/6okfzfPqPQj9/J21wWUirLXu72fC0KxJDjmKNmGM\r\nZE9xwMrwNIO3Fp2urwi9IbR+O6/nwxpmTbH11kztY5N0G0EIviO2ikuYs9D7\r\nQ7Rr6viBWZUcLYhuaQExWxP7SdD27+h7Z3aswQWDIMGqeidZlFP6rWUaYUVQ\r\nPODWC6amlmXGnKvHZ24+yWxfaliv78GkB5PFrmIVb/zLKA5qiicQghFnprd4\r\n6v4BadyTs1SHNfvcj4W+8DSNmNkpK0SY704=\r\n=vUPM\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.8.0_1673906620906_0.9021193759757797"},"_hasShrinkwrap":false},"0.8.1":{"name":"@grandeto/vrchats","version":"0.8.1","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"b9d06f4522d14ed021c0d7563cabe59ca2d9e235","_id":"@grandeto/vrchats@0.8.1","_nodeVersion":"14.18.1","_npmVersion":"8.1.1","dist":{"integrity":"sha512-nvM/hPGFU1/2Ul/PXlo7OItEwz1XapW/1MSb8qdFnwwXWZhh73rZjDbzoxJtoN6H+bVqOsuSCGpizfriDFpLZQ==","shasum":"e1a3c5ba16b328512b446336ec229bfb0c72641d","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.8.1.tgz","fileCount":15,"unpackedSize":31345,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlEvE/plKE+mN4E3dca72ye5c5VQSF/x5tOo2Ug1mQLAIhAN2BhE7BdiQNlMMxK18WSdso50njLu3m+YBVLIt8A3yj"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjxekaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmquUw/9E20Y51c5Fdkb4/WzqXTRd2lljVve4jp74odBf+LFyLRykKKw\r\nH/KOQlAoJXEjmwVsIWC7IUEFfXQQB2SnWAjWlWKUOYzHHX7RN9M0MXYGM34v\r\niIKgu49j+cqSqAmbseUabus4MgnzCF2wl1bsBGguBDPUq5zTRR+60zhN89C9\r\nfMvyKjO1bqWSKKEZqltbRjefv4tZSp6Qa3l8Vu4ZX3hZKSQv5C6/4zZtapoN\r\nZwcE94W+7HqoOkmoR7TM64rp1r4HwwZheFj24Lzn5jAgm3zUrODkfcGpGRGe\r\nSM+G39YiQ0WcweCRdUt5lYerhNsDQAOu1mYfA+HNzHaD5J1mVhcUDrBXbRDa\r\nWskWH9sYpG9zl6MtYu8XRvaS4KGKqdxfA9In5HANXN1ygaXcNKaDLS0N+k6y\r\nOZkNuNNSB/jKKJXxpE++XkzChCbSkuNQxQOYfOpInQpPImATpJzvAfeC89LU\r\n0cOhTB2J4EsDpRmXINCw4E4PlSaqHG+Qbpn9O45z6q2gIVT8Mpa+1BGLCaXD\r\nqRxEwNGHPLR1WWuu75ggjx7uFe/krYQ2ejtLjhmFZIUV2SwjUHsGAtTLXRtE\r\nXibTR74OPMHcRD9eQ3+ZRJOrYGF08hRTpflhOKZ1z6va4b5/SqWuyaN0Vwwo\r\nqEXthcJJx2xm3q7vETIchZ3l1f3aGA06sco=\r\n=s3gy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.8.1_1673914650641_0.16148018617107307"},"_hasShrinkwrap":false},"0.9.0":{"name":"@grandeto/vrchats","version":"0.9.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"e914564c092f2c993b6ad0ff766932ec967b4104","_id":"@grandeto/vrchats@0.9.0","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-fEkWpW4OipPXb4+L6f1b4LSiIBge+KWaO4ByYhm8lxM87yL5aTI5a4vpof+RsS9m5MhcbCNcddKafPdfsELdfA==","shasum":"6b866d09572b4aedf4c485f06cfb4787b7809d40","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.9.0.tgz","fileCount":15,"unpackedSize":31405,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHn5F2ZepVsodTvLDcRD7SeZjSH0mYpVs5roSveAQFk2AiEAl4s/Sq0p70KXWiVyhbg1NdjnmSbxqxACYIxZGytA6ow="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJ15OACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqf4w/9EK4lFLv3CmQdqeYbycWFNmTWaAUiML1T1r/Mla9sIUKbRbNM\r\nsOsTExw0vBaV/2zT75g01jqlADVVrDJXY/BgOxkqVC/puVeHIl85Efhv6Ekw\r\nvgIhz9xg/GGFCZmMMvF/Er1dNIXUTzBdCDpK0Lq3xnOKwIEHYvESq252Ybbv\r\nQXmD6X5KGAtohnjxPCrWvEofelVNqsMKVsdI+uu1vh8Z+XjDI7aSy+Ridg9l\r\ncZnnjtpRYntPoobRi+0Kbuv59k2Hpvh4pGYvvQ01oRqLUbHlAw3rV1D5J6aR\r\nnn1gqFHrEd7fA0P9KOtIZ31XAGXTdMv/cx9IGHorpa8iEWewkQWPQQGoLB8E\r\nq8Ju6jzcL/CVm+YB5JtRtPDP4rBakt5VxeNa+WG8tpp0OqUAIEEpQ7iy2Ni9\r\npZJkyYEn3XOsdJl1COPixR7E0CVzznAt4vSAbuDLBllFBhGCH6PeeRWq7kqd\r\nnPrqEpyK7g5wCrPNIh1cnysoqkU4VsYBIwtWJo6DbtzpreBulxWWH4Jvber5\r\nSvhBt1FD+UQsiF96SerIMX4Dtyy6xjXI1TexwyiCszdxLM4DYFD/O16w/SFu\r\nOSEmVK5rVU44Go+vPll4bskVf9YYwkDKOdCLyKLTQDDl8KZ2Zy5DHqLz8dcD\r\niisW4F4MEMONtNFQDPQFdqaMBBZ8CC9BPyc=\r\n=F9BS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.9.0_1680301646225_0.6054741388353839"},"_hasShrinkwrap":false},"0.10.0":{"name":"@grandeto/vrchats","version":"0.10.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"69811f4eaf7a1e76ea7c33ee504a2942e4684af1","_id":"@grandeto/vrchats@0.10.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-BR5rG73dstYspuCjkbTrOnMIYdMrjkPDgqks5/TVy/C6amVmRqA6hAIk/JxwDyqw2VrZFjanmuvwpI4nHs3USA==","shasum":"44cfa6a4874f9b9cd0622b89a8647e3b8e4a0d8c","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.10.0.tgz","fileCount":15,"unpackedSize":31312,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAaWb/gjYyt2TRdDSKM34ZH1u6JsM3rInr1T36ZBngXxAiEAnG9KOJaZOYOKgh7SXaHWEKYaZY5uUhzme2COuZ1PWTY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkMrQbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrwXQ/6ApcrFIjSFI+7XDU4Q8LpcMSTm5WZZZDguoBtfS1Yh0+R1Z2/\r\nsHBGBylzyyrRD6VRxIjrYiTv49x3WUz/qYrQTIWTIr8rRmTBzjaKpZrKcdyy\r\neajrkzlAPbTIfC5j+6IQa21jP9hx+VM2uaboixP+Fizga46rK81s77it4dGt\r\nBUqKYgoOs9kkjhQxWpj8mrEMhur6JpUzPqh4+vMoB5fCTSFybZAVlo9xeyr1\r\nlLkqfltUow+ilgOPEbsaFqe88d/SB37nz5qDok+81wec27rMcCCYhFBx4te6\r\npCSGtjsJ5skJoyri3OMZKxPLnBBVPxu78hiQ4O9eHR7076fGRVRel4AwXYgr\r\nLgjkYvUuH3KhyhPE3NS1So5sGdj6X8HXVAtfHcgBVqdMf0M77J3q7dQW+O1Q\r\nWyt0eV8Gk8wX9cCE0/nriOr4OhZlqSrLGkZmQo49QjLZ1A/MD4xGtUyQDYX9\r\nTkP3wSf1zNvfA/Jmx0QA4eJ7Ye1bV3OuudLFf2nHwjfHeZ9aECxaU8Ky0jVD\r\nNZxChdd/NkqjsJP2JMLz5vr1ToA0ODV8fA2ZEZXkLru9pZVXpQpVVCQvMior\r\n4TwbECyj3JJ5HKjcmOo+oQ6C9XjmxWm0hC5L9w9VE0+sdI93/HdldJVdtslH\r\n7yGFHGQZeB7nKYDjO/2PpJVnoTv38vYAiyk=\r\n=5jWU\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.10.0_1681044506861_0.08873883901292046"},"_hasShrinkwrap":false},"0.11.0":{"name":"@grandeto/vrchats","version":"0.11.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","engines":{"npm":"9.5.0","node":"18.15.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"a31065e80509964f9ab1867f53dd88945bf9f09b","_id":"@grandeto/vrchats@0.11.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-tUEEEZKEAz/Kd/LQI09PrHGK2dmyTAjDJY2q8CTcOVf1ned3n14AnFWHTMGFUFrUl0FoDMR0SJvl3BoRnNJGVw==","shasum":"2565b285a799cbabc8532ba8864853d2cea3d944","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.11.0.tgz","fileCount":15,"unpackedSize":31374,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD57RY49SHoFwQRmBfPr/VOxNC+h14nk7sIigpvd+FNNgIhAJPp2ctldhGKIHwGJit2JVaBaapDn3fhbABBhzdIHKq1"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNcK+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpEthAAgVJkUEoDKe2WBjmxcHN/+iIq3K9knCE3bQMAXSjpcz4hkkwl\r\nqBZF5svkGjo2ZTNXsvPer1MlC2J95TQ4RmbjP+cgXwklI4bFkE36H2wer+fz\r\n0N4UrJhYcBlOEu9Oa72sU8VT5WVY3miLbnP4ukB3d8DxBSlH2vVOUnbDdp2y\r\nl8tjKk4aP6UqgvUNavQu65MhFt5KW8hmCm8H/7lKqpIQ0cle2gaYFDTFTX6t\r\ndkoq1dg4hjxIK0X6zth4so8d+EzigxE0mf+LG/9czE5/k2CoZ1nDb9KIGGiz\r\n0kcLTiyTHK+LSU+Kn7OHxWftDvaYm1AEzEt8vzYXY4pckrl/0xZJCMAU2IEF\r\nCqfVVLqr1BY0bQ2Ze966gYEHdxoRE4lhM3aYWxLRpiSjWP7sSkjoSype+3vz\r\nRvt/mOgo/FHizSxjOQ/7vj5jiLW9TFh4eU6jsQgzFarX9RNM3WGL7+k405m7\r\n6oScxsTKrkkPrsfFBuhoZseoV4QHAKlMDu62gMRwU3q4jkFvTeeJnunCkGfR\r\n1ifodwAqL3Mswr+dZFBjNyAXHywVAgU1sowziqKKoScnOrmMX6D3pEsxuLFM\r\nV1o/97w5gvr8nyTc5vjTDX/4FE9iQFrOFHpxKapcH1EsibAZUOoD/zcaJwga\r\n4MJHS+OqsLLfK2fUoMCR7PgP81EC2aFDcaI=\r\n=qXpq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.11.0_1681244862378_0.5626066629659026"},"_hasShrinkwrap":false},"0.12.0":{"name":"@grandeto/vrchats","version":"0.12.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","engines":{"npm":"9.5.0","node":"18.15.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"9cc9b73125ca2342fde0384df31a83b3df0c0b3d","_id":"@grandeto/vrchats@0.12.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-6LYZSs82QsJzxSl5Obklnh0g4GieKr0SS3ejVHIr+F1+zSXGlbV3UPr2+mthQUhHNO8/BBIHvJGjODF6N2eqvQ==","shasum":"91ce7900505555fcc6e537799242f94e8ae2bac8","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.12.0.tgz","fileCount":15,"unpackedSize":28293,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID5CvB+qX6r9UC+Ea36ObqdQKG/haaXgDGRZs17aKLRmAiBs2jp6NLyoQBtsZXYwxAx5bn1WElJ5o14T1YiUREh36Q=="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.12.0_1707613685612_0.4648394396754707"},"_hasShrinkwrap":false},"0.12.1":{"name":"@grandeto/vrchats","version":"0.12.1","description":"Event driven real-time chat based on Socket.io","main":"app.js","engines":{"npm":"9.5.0","node":"18.15.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"0df4b70af1bf4a5262a9a3097fe3c297c4393bfc","_id":"@grandeto/vrchats@0.12.1","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-c8NknV+db5hWh5t8G5S1cr5ehzf+IXIy5UVNlzOz+YwkBfTz54UoBStRD7m0VJ+T4u9L4pgEes/caDjqgP//TQ==","shasum":"120f1cd193b7c2742be2bad68c850d699fb23c04","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.12.1.tgz","fileCount":15,"unpackedSize":28332,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICcSMRc7rNflpKGXSEJ3XCTuGp7XBG8/USgkcv+aCZZBAiB4DXyav9INCB6yNyaoHpE0jVHg0Ur74iIu4lo7dL7F5Q=="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.12.1_1707646377270_0.5853749441056932"},"_hasShrinkwrap":false},"0.13.0":{"name":"@grandeto/vrchats","version":"0.13.0","description":"Event driven real-time chat based on Socket.io","main":"app.js","engines":{"node":"20.11.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"4d997d9d9d6792dbfff1100e1bfc15b3a30a8ff8","_id":"@grandeto/vrchats@0.13.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-/qXz0gkK3CJPx+LUDq5TA8IR/gOo2Gy83P5ihlbOdzfiZgqRQU8R6S7E4G6tUwPzn6ZDQWgiARwfzT3bAcGG5g==","shasum":"2eef6feda792f81efcab47316c5d62c8da59a6f5","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.13.0.tgz","fileCount":15,"unpackedSize":28303,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICVt9jxZCK9e9TqEukOsPrnGnjPvazRwmRyJ7AbIZSshAiEAjhJL5k0iMuJjrPmaAxYGoYtm81pwLA0TBN1XX9J6MCo="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.13.0_1707648814818_0.3331649623801576"},"_hasShrinkwrap":false},"0.13.1":{"name":"@grandeto/vrchats","version":"0.13.1","description":"Event driven real-time chat based on Socket.io","main":"app.js","engines":{"node":"20.11.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"d4395c596a4c018535c4d2d05469bfffeb60d775","_id":"@grandeto/vrchats@0.13.1","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-TAnPPN8M1lKl/F2jx8oU4Uij6Yq4NjRpuNr9AjBgjjNdyy8llhU8BowLCEAC+5k/0DGTKBPRfztm35giqeVpxA==","shasum":"d53eef46b0844dbf1d5e578675bc202520537310","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.13.1.tgz","fileCount":15,"unpackedSize":28325,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/pMcFNewbFm5DInGnF/a1n1l83rvMjTgDQ9UcI84fSAIgIFc8xTF3kroIVPcC1FqVYg3NwZR1fo7bqjgJn5qzyV0="}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.13.1_1707649347184_0.7340047554238711"},"_hasShrinkwrap":false},"0.13.2":{"name":"@grandeto/vrchats","version":"0.13.2","description":"Event driven real-time chat based on Socket.io","main":"app.js","engines":{"node":"20.11.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev.run":"NOCACHE=$(date +%s) BUILDKIT_PROGRESS=plain docker-compose up --remove-orphans --build","dev.remove":"docker-compose down -v","dev.update":"npm run dev.remove && npm run dev.run"},"repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"license":"ISC","dependencies":{"crypto-js":"^4.1.1","dotenv":"^10.0.0","express":"^4.17.1","range_check":"^2.0.4","rate-limiter-flexible":"^2.2.4","resolve-global":"^1.0.0","socket.io":"^4.2.0","winston":"^3.3.3","bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"optionalDependencies":{"bufferutil":"^4.0.3","utf-8-validate":"^5.0.5"},"devDependencies":{},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"homepage":"https://github.com/grandeto/vrchats#readme","gitHead":"c26e6235dcc0aba247d7cd733ce8943b9da24efc","_id":"@grandeto/vrchats@0.13.2","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-ZW+lV0metcSG6f0TJQ0MDcqDO/TnJitjEh0rlpGUJ6WslOEIwa8RoN45eE1M/uyvEJFJL7JXhLubr3GtKRMEVw==","shasum":"316b0c3190ad5f8dcaa826c3b20c047baa140e6c","tarball":"https://registry.npmjs.org/@grandeto/vrchats/-/vrchats-0.13.2.tgz","fileCount":15,"unpackedSize":28367,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrOnQkjWGXTBgYvf22FGNB8TgRT/LHeyrEe9LCcXK6fQIhAJrrGVV0xTdyIx8Ly8hI7fkEQSNO7WL7gPZrzgzRG8cl"}]},"_npmUser":{"name":"grandeto","email":"grandeto.dev@gmail.com"},"directories":{},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vrchats_0.13.2_1707649995293_0.9553167086846566"},"_hasShrinkwrap":false}},"maintainers":[{"name":"grandeto","email":"grandeto.dev@gmail.com"}],"description":"Event driven real-time chat based on Socket.io","homepage":"https://github.com/grandeto/vrchats#readme","repository":{"type":"git","url":"git+https://github.com/grandeto/vrchats.git"},"author":{"name":"grandeto"},"bugs":{"url":"https://github.com/grandeto/vrchats/issues"},"license":"ISC","readme":"# Description\n\nHTTP/WebSocket real-time message processor based on Socket.io\n\n# Requirements\n\n- Node.js version: refer to package.json engines.node\n\n# Features\n\n- HTTP event handler\n- WebSocket multicast emitter\n- Publishers: Trusted Origins, CIDRs, PROXY\n- Subscribers: WebSocket Auth, Rate Limiter\n\n# Environment\n\n## Tune OS (Linux) and Node.js for websocket connections\n\n### https://tcminh.com/600k-concurrent-websocket-connections-on-aws-using-node-js/\n\n```bash\nsudo nano /etc/security/limits.d/custom.conf\n\nroot soft nofile 1000000\nroot hard nofile 1000000\n* soft nofile 1000000\n* hard nofile 1000000\n```\n\n```bash\nsudo nano /etc/sysctl.conf\n\nfs.file-max = 1000000\nfs.nr_open = 1000000\nnet.ipv4.netfilter.ip_conntrack_max = 1048576\nnet.nf_conntrack_max = 1048576\n```\n\n```bash\nsudo nano /etc/sysctl.d/net.ipv4.ip_local_port_range.conf\n\nnet.ipv4.ip_local_port_range = 10000 65535\n```\n\n- check `ulimits`\n\n```bash\nulimit -Sa && echo -e \"\\n\" && ulimit -Ha\n```\n\n- set memlock if too low\n    - example of setting 15.5GB memlock in /etc/docker/daemon.json\n\n    *NOTE: in daemon.json memlock soft:hard values should be in binary bytes representation e.g. 15872000000 B instead of 15500000 KB - https://www.gbmb.org/kilobytes\n\n    ```json\n    \"default-ulimits\": {\n        \"memlock\": {\n            \"Hard\": 15872000000,\n            \"Name\": \"memlock\",\n            \"Soft\": 15872000000\n        }\n    }\n    ```\n\n    *NOTE in /etc/security/limits.d/custom.conf memlock soft:hard values should be in decimal kilobytes representation e.g. 15500000 KB\n\n    ```bash\n    root soft memlock 500000\n    root hard memlock 500000\n    * soft memlock 15500000\n    * hard memlock 15500000\n    ```\n\n- Create an `.env` file from `.env_example`\n\n```bash\nchmod 600 .env\n```\n\n- Add `pubkey.pem`, `privkey.pem`, `ca.pem` in `./certs`\n\n```bash\nchmod 600 ./certs/*.pem\n```\n\n- Whitelist `.env` ports in firewall\n\n## Docker\n\n### Prod\n\n- Build an image\n\n```bash\ndocker build -t \"vrchats:vX.X.X\" .\n```\n\n- Start a container\n\n```bash\ndocker run -d --name vrchats --restart always -p 8443:8443 -p 2053:2053 vrchats:vX.X.X\n```\n\n- applying changes\n\n    - re-run build step followed by:\n\n    ```bash\n\n    docker stop vrchats && docker rm vrchats && docker run -d --name vrchats --restart always -p 8443:8443 -p 2053:2053 vrchats:vX.X.X\n    ```\n\n- *NOTE: Consider adding a cronjob in order to handle https://github.com/grandeto/vrchats#pm2-knows-issues\n\n    `0 0 * * * docker restart vrchats`\n\n### Dev\n\n```bash\nnpm run dev.run\n\nnpm run dev.remove\n\nnpm run dev.update\n```\n\n## pm2\n\n- Save pm2 settings\n\n```bash\npm2 save\n```\n\n- pm2 deamon\n\n```bash\npm2 startup\n```\n\n- Copy and execute the output command generated by `pm2 startup` then:\n\n`sudo nano /etc/systemd/system/pm2-$USER.service` and:\n\nadd `Wants=network-online.target` above `After=network.target`\n\nadd `RequiresMountsFor=/home` above `After=network.target`\n\nchange `After=network.target` to `After=network.target network-online.target`\n\nchange `WantedBy=multi-user.target` to `WantedBy=multi-user.target network-online.target`\n\nadd under `[Service]` the following env variables:\n\n```\nEnvironment=NODE_ENV=production\nEnvironment=CLUSTER_MODE=1\nEnvironment=CLUSTER_INSTANCES=\"-1\"\nEnvironment=PRODUCER_PORT=2053\nEnvironment=CONSUMER_PORT=8443\nEnvironment=STANDALONE_PORT=8443\nEnvironment=TRUST_ORIGIN_LIST=\"https://example.com\"\nEnvironment=TRUST_CIDR_LIST=\"123.123.123.123/32,127.0.0.1/32,::1/128\"\nEnvironment=USE_PROXY=1\nEnvironment=TRUST_PROXY_LIST=\"103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,104.16.0.0/13,104.24.0.0/14,108.162.192.0/18,131.0.72.0/22,141.101.64.0/18,162.158.0.0/15,172.64.0.0/13,173.245.48.0/20,188.114.96.0/20,190.93.240.0/20,197.234.240.0/22,198.41.128.0/17,2400:cb00::/32,2606:4700::/32,2803:f800::/32,2405:b500::/32,2405:8100::/32,2c0f:f248::/32,2a06:98c0::/29\"\nEnvironment=PUB_KEY_PATH=/var/www/vrchats/pubkey.pem\nEnvironment=PRIV_KEY_PATH=/var/www/vrchats/privkey.pem\nEnvironment=CA_PATH=/var/www/vrchats/ca.pem\nEnvironment=VERIFY_ORIGIN=1\nEnvironment=WEBSOCKET_AUTH_TOKEN_RENEW_START_HOUR=0\nEnvironment=WEBSOCKET_AUTH_TOKEN_RENEW_INTERVAL=86400000\nEnvironment=WEBSOCKET_AUTH_TOKEN_SECRET=\"some-nasty-secret\"\n```\n\n- Execute `sudo systemctl daemon-reload`\n\n- reboot\n\n- after reboot test the service is operational\n\n```\npm2 ls - should display list of running instances having status online\n```\n\n### pm2 applying changes\n\n- `pm2 ls && pm2 stop all && pm2 delete all`\n\n- `pm2 save`\n\n- `sudo systemctl restart pm2-$USER`\n\n- `pm2 ls` - verify pm2 started successfuly the app instances with new pids\n\n# Test connectivity\n\n```\nhttps://example.com:2053/status - should return 200 OK\n\nhttps://example.com:8443 - should return 404 \"Cannot GET /\"\n```\n\n# Monitoring\n\n- set `ENABLE_DEBUG=1`\n\n- rebuild and deploy\n\n- attach to container\n\n`pm2 monit` and `pm2 logs`\n\n- TODO export and collect metrics\n\n- TODO collect log stream\n\n# Troubleshooting and known issues\n\n## pm2 knows issues\n\n- It seems `pm2 v5.1.2` has a weird timezone behaviour, as seen from `.pm2/pm2.log`:\n\n    An example from sequent restarts of pm2-$USER service:\n    \n    - `2021-12-19T14:53:56: PM2 log: --- New PM2 Daemon started` - has the correct TZ in UTC\n    - `2021-12-19T18:24:12: PM2 log: --- New PM2 Daemon started` - the next one executed right after the previous one has started all of the nodes, but outputs an incorrect UTC TZ\n\n    Thus, auto-refreshing of the `auth_token` becomes unreliable and the simplest workaround is a root cron job scheduled to restart the `pm2-$USER` service daily. For instance:\n\n    `0 0 * * * systemctl restart pm2-$USER`\n\n- [pm2 docs - journalctl -u pm2-$USER.service](https://pm2.keymetrics.io/docs/usage/startup/)\n\n- [stackoverflow 43786412](https://stackoverflow.com/questions/43786412/get-message-spawning-pm2-daemon-with-pm2-home-home-dir-pm2-always/69510630#69510630)\n\n- If your home directory is encrypted in order to demonize with `pm2 startup` all the node.js, npm and app raleted files should be outside of the home dir or try [link1](https://bbs.archlinux.org/viewtopic.php?id=201781) [link2](https://superuser.com/questions/1037466/how-to-start-a-systemd-service-after-user-login-and-stop-it-before-user-logout) [link3](https://bbs.archlinux.org/viewtopic.php?id=244264)\n\n# Client\n\n- check the client_example dir and socket.io docs\n\n# Release\n\n- create branch `vX.X.X`\n- open PR `master <- vX.X.X`\n- merge PR\n- wait for github actions\n- delete `vX.X.X`\n- draft new release -> create tag -> publish\n- git checkout master && git pull\n- npm login\n- npm publish --access public\n","readmeFilename":"readme.md"}