{"_id":"@crabnebula/tauri-plugin-better-auth-license","_rev":"8-e0695b416c045bdbc37d847c5974248e","name":"@crabnebula/tauri-plugin-better-auth-license","dist-tags":{"latest":"0.0.9"},"versions":{"0.0.2":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.2","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.2","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"36648d1cbeb2d5d23663c4ad6d1622029c277513","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.2.tgz","fileCount":5,"integrity":"sha512-G8efcqqJKmhK06ogAvyCk0/EZRwhxFukKX45OSc7+quGuj1+WHUvCNojolLOWVF+0AOfjLY8fnSyRp/qWAbnIQ==","signatures":[{"sig":"MEUCICnVaFgF4EBcPOXnM17C32l8OUUjQqdZnIMvobat11B/AiEAs3NO7rASaTSrDPqpFncCyCPagddauAlWIcaDXDFanEg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16417},"main":"./dist/index.js","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.2.tgz","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/71a9ac1770e2fd7a077ee8a876832afb/crabnebula-tauri-plugin-better-auth-license-0.0.2.tgz","_integrity":"sha512-G8efcqqJKmhK06ogAvyCk0/EZRwhxFukKX45OSc7+quGuj1+WHUvCNojolLOWVF+0AOfjLY8fnSyRp/qWAbnIQ==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.2_1762364712484_0.35599776984266884","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.3","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.3","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"0863130814ece8c91bbc9a76a9c79191a85133fd","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.3.tgz","fileCount":5,"integrity":"sha512-Ii9QqlURS5tdjJIeiO66JRYSwPeKgGhHd1GJBPKCE6Xa1oiYpGXIJqUH3jQr44QjC2djyICs4C5S+eayhwJGTw==","signatures":[{"sig":"MEQCIFpxjIQrqx1ewdPmczC4OwAqqKwKR459ZceYT+RjMqSYAiACfV9UoaFZjCS9mONoH6gEmsagJfYD6PrmIcMYMPgbZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16721},"main":"./dist/index.js","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.3.tgz","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/85fe710dd4c2ee2e40ee29e27c6fac04/crabnebula-tauri-plugin-better-auth-license-0.0.3.tgz","_integrity":"sha512-Ii9QqlURS5tdjJIeiO66JRYSwPeKgGhHd1GJBPKCE6Xa1oiYpGXIJqUH3jQr44QjC2djyICs4C5S+eayhwJGTw==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.3_1762374184748_0.8108607519010451","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.4","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.4","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"ddc9b99344fff37e0171f73b2013e428f1584c72","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.4.tgz","fileCount":7,"integrity":"sha512-hn1ggW/G3U/qhdgpK8Y4MccakaXCq5o1/3C2tuDJDTzXq1iNVer76Q3PSh4ounLR0COq1mLveLH6rkiE0DrB5w==","signatures":[{"sig":"MEUCIQDNbtu5Glxc6H7yAYhKSM7ejmebfMoMgv49yxcqoNIpKQIgMSE7NRls7WYSwZFAw32Ckg+wqDIYMUhOXQGkm00SDI8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17948},"main":"./dist/index.mjs","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.4.tgz","types":"./dist/index.d.mts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/764dda1b650802df693707a00dacba74/crabnebula-tauri-plugin-better-auth-license-0.0.4.tgz","_integrity":"sha512-hn1ggW/G3U/qhdgpK8Y4MccakaXCq5o1/3C2tuDJDTzXq1iNVer76Q3PSh4ounLR0COq1mLveLH6rkiE0DrB5w==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.4_1762375198924_0.5637251459083881","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.5","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.5","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"ffd36f78c17c5c18fc2007fb06f5e52798edf4ee","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.5.tgz","fileCount":7,"integrity":"sha512-ndn1Wvu+nGBNgMszaxxarvKC39Xk76KSZpmnE6N1ZaXLz6eGl7AWoQYmG0kOgLmOh51UxEElgKh9dHPj43EaaA==","signatures":[{"sig":"MEUCIBzV22+dhsjO/4A88TWF8QTKQYbv0kwJjIomcF7dKC83AiEA1y2KPEJFGJZEmNh/3ZpDqT1JWCubfTGlu8ZIGbqi46U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18243},"main":"./dist/index.mjs","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.5.tgz","types":"./dist/index.d.mts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/9709becdebeed712f7188c6580a8b15a/crabnebula-tauri-plugin-better-auth-license-0.0.5.tgz","_integrity":"sha512-ndn1Wvu+nGBNgMszaxxarvKC39Xk76KSZpmnE6N1ZaXLz6eGl7AWoQYmG0kOgLmOh51UxEElgKh9dHPj43EaaA==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.5_1762376924459_0.4475387805415947","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.6","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.6","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"2354a00e21e701bf6a26e5585b22b38485da83e6","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.6.tgz","fileCount":7,"integrity":"sha512-Ik7jIXptNEKSiaXlBFO2AILmwjrYkl28H7H5EFFm+IBHpZt5d4CU4IKKMgx0vYyXFLSUM6LZmMFj5ZmtnnnrKQ==","signatures":[{"sig":"MEUCIG0WEur/AgruAwmppRYqLYSj7vCM3V3B7nnje8LQq0Q0AiEAo3IZz03VU7XqxQiBy3XJQ3tv+mvsRD8FXMEacRBlFd0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22318},"main":"./dist/index.mjs","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.6.tgz","types":"./dist/index.d.mts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/cfbd7c9dfb046ab050e132a707afb480/crabnebula-tauri-plugin-better-auth-license-0.0.6.tgz","_integrity":"sha512-Ik7jIXptNEKSiaXlBFO2AILmwjrYkl28H7H5EFFm+IBHpZt5d4CU4IKKMgx0vYyXFLSUM6LZmMFj5ZmtnnnrKQ==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.6_1762442034535_0.5517275110922231","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.7","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.7","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"994eb2716ca5307ad8002c48242d3272ac30bc7e","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.7.tgz","fileCount":7,"integrity":"sha512-gv1JAF7KtMleUK398YM6kWQa1neUxg97wgmF3grhZp9wzcuaKr3WHhYspvPfkYNrPdo1N99NcSlg+CNLFrAKRg==","signatures":[{"sig":"MEQCIHtR0kiD7by8Kf4xhMmpPYDWnCiSUraO9/cEUguixksHAiBI6cuglp++1ntpMh2WgQ0pAROPUXW64BvMjLxkFCCMvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23965},"main":"./dist/index.mjs","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.7.tgz","types":"./dist/index.d.mts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/3b5dddf01e9ace163e60824f4554f213/crabnebula-tauri-plugin-better-auth-license-0.0.7.tgz","_integrity":"sha512-gv1JAF7KtMleUK398YM6kWQa1neUxg97wgmF3grhZp9wzcuaKr3WHhYspvPfkYNrPdo1N99NcSlg+CNLFrAKRg==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.7_1762446691728_0.8861804266792368","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.8","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.8","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"dist":{"shasum":"b086452a2c7e5c0192b0ec07657c7376bc4b7bf1","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.8.tgz","fileCount":7,"integrity":"sha512-iELhxf8mN13LD0VslYb6HFVlWhLXO0ztpTewvgdV48SfeLxqLeWaXGULfyZHFhKADIk4TdtIgkENay28UuVVBQ==","signatures":[{"sig":"MEYCIQDcnyYnL/UL5OQEiZfJL7wswAuDxhhAb9EUnE4FbClCjgIhAKTAraZrTIhkll7awf1PeOA/x1X1/eYc2us75jipkzQi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24271},"main":"./dist/index.mjs","type":"module","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.8.tgz","types":"./dist/index.d.mts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"_resolved":"/tmp/9b8c852ec0ba229e298a2c5a4e539734/crabnebula-tauri-plugin-better-auth-license-0.0.8.tgz","_integrity":"sha512-iELhxf8mN13LD0VslYb6HFVlWhLXO0ztpTewvgdV48SfeLxqLeWaXGULfyZHFhKADIk4TdtIgkENay28UuVVBQ==","repository":{"url":"git+https://github.com/crabnebula-dev/better-auth-license.git","type":"git"},"_npmVersion":"11.6.1","description":"Tauri plugin for license-based authentication and secure device validation.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@tauri-apps/api":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.16.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tauri-plugin-better-auth-license_0.0.8_1762885044837_0.06994722348004512","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@crabnebula/tauri-plugin-better-auth-license","version":"0.0.9","description":"Tauri plugin for license-based authentication and secure device validation.","author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","repository":{"type":"git","url":"git+https://github.com/crabnebula-dev/better-auth-license.git"},"bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"main":"./dist/index.mjs","types":"./dist/index.d.mts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"engines":{"node":">=18.0.0"},"type":"module","dependencies":{"@tauri-apps/api":"^2.9.0"},"devDependencies":{"tsdown":"^0.16.1","typescript":"^5.9.3"},"publishConfig":{"access":"public"},"scripts":{"build":"tsdown","prebuild":"rm -rf dist && rm -rf api-iife.js"},"_id":"@crabnebula/tauri-plugin-better-auth-license@0.0.9","_integrity":"sha512-dEuxQscvS3iEBbPWmKibixmF7jATwgyr4RM5IzQIgIJ2nUn1mi048ctYhKnAA7oMJInBrMQwWMQmj6rhsn0Wgw==","_resolved":"/tmp/d5f6719188edd94c07737500dd30de67/crabnebula-tauri-plugin-better-auth-license-0.0.9.tgz","_from":"file:crabnebula-tauri-plugin-better-auth-license-0.0.9.tgz","_nodeVersion":"24.11.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-dEuxQscvS3iEBbPWmKibixmF7jATwgyr4RM5IzQIgIJ2nUn1mi048ctYhKnAA7oMJInBrMQwWMQmj6rhsn0Wgw==","shasum":"b300f9ec5887c583dc4222c0254de8eb8be6aba2","tarball":"https://registry.npmjs.org/@crabnebula/tauri-plugin-better-auth-license/-/tauri-plugin-better-auth-license-0.0.9.tgz","fileCount":7,"unpackedSize":25413,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAL+Kl8WFLHsIs81Vy64ZDW9sdT4egmF0aobLTz4RM4DAiEAitdIl6J0zGosHuzNumEQUDW7FKaxux7+1v8ej3giON8="}]},"_npmUser":{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},"directories":{},"maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tauri-plugin-better-auth-license_0.0.9_1763147729385_0.18120723293607255"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-05T17:45:12.408Z","modified":"2025-11-14T19:15:29.816Z","0.0.2":"2025-11-05T17:45:12.704Z","0.0.3":"2025-11-05T20:23:04.961Z","0.0.4":"2025-11-05T20:39:59.145Z","0.0.5":"2025-11-05T21:08:44.659Z","0.0.6":"2025-11-06T15:13:54.714Z","0.0.7":"2025-11-06T16:31:31.976Z","0.0.8":"2025-11-11T18:17:25.041Z","0.0.9":"2025-11-14T19:15:29.584Z"},"bugs":{"url":"https://github.com/crabnebula-dev/better-auth-license/issues"},"author":{"name":"CrabNebula","email":"hello@crabnebula.dev"},"license":"Apache-2.0 OR MIT","homepage":"https://github.com/crabnebula-dev/better-auth-license#readme","keywords":["better-auth","license","plugin","authentication","typescript","desktop","validation","esm"],"repository":{"type":"git","url":"git+https://github.com/crabnebula-dev/better-auth-license.git"},"description":"Tauri plugin for license-based authentication and secure device validation.","maintainers":[{"name":"crabnebula-npm","email":"npm-admin@crabnebula.dev"},{"name":"lucasfernog-crabnebula","email":"lucas@crabnebula.dev"}],"readme":"# Better Auth License Tauri Plugin\n\nProvides device-bound licensing for Tauri applications through encrypted activation flows and offline-verifiable JWTs.\n\nThis Tauri plugin is designed to be used together with the Better Auth License plugin:\n\n[![NPM Version](https://img.shields.io/npm/v/%40crabnebula%2Fbetter-auth-license)](https://www.npmjs.com/package/@crabnebula/better-auth-license)\n\nIt generates an X25519 device keypair, stores the private key securely in the OS keychain, exposes only the public key to the server, and handles all JWE encryption/decryption automatically.\n\n| Platform | Supported |\n| -------- | --------- |\n| Linux    | ✓         |\n| Windows  | ✓         |\n| macOS    | ✓         |\n| Android  | x         |\n| iOS      | x         |\n\nAll private keys, license keys, and tokens are securely stored using the native credential store (macOS Keychain, Windows Credential Manager, Linux Secret Service).\n\n## Install\n\n_This plugin requires a Rust version of at least **1.77.2**_\n\nThere are three general methods of installation that we can recommend.\n\n1. Use crates.io and npm (easiest, and requires you to trust that our publishing pipeline worked)\n2. Pull sources directly from Github using git tags / revision hashes (most secure)\n3. Git submodule install this repo in your tauri project and then use file protocol to ingest the source (most secure, but inconvenient to use)\n\nInstall the Core plugin by adding the following to your `Cargo.toml` file:\n\n`src-tauri/Cargo.toml`\n\n```toml\n[dependencies]\ntauri-plugin-better-auth-license = \"0.0.9\"\n# alternatively with Git:\ntauri-plugin-better-auth-license = { git = \"https://github.com/crabnebula-dev/better-auth-license\" }\n```\n\nYou can install the JavaScript Guest bindings using your preferred JavaScript package manager:\n\n```sh\npnpm add @crabnebula/tauri-plugin-better-auth-license\n# or\nnpm add @crabnebula/tauri-plugin-better-auth-license\n# or\nyarn add @crabnebula/tauri-plugin-better-auth-license\n```\n\n## Usage\n\nFirst you need to register the core plugin with Tauri:\n\n`src-tauri/src/lib.rs`\n\n```rust\nuse tauri_plugin_better_auth_license::Builder;\n\nfn main() {\n    tauri::Builder::default()\n        .plugin(Builder::new()\n            .with_license_server(\"http://localhost:5173/api/auth\")\n            .build())\n        .run(tauri::generate_context!())\n        .expect(\"error while running tauri application\");\n}\n```\n\n\nCapture the user license key input:\nAfterwards the plugin API are available through the JavaScript guest bindings:\n\n```javascript\nimport { update, remove, validate } from '@crabnebula/tauri-plugin-better-auth-license'\n\nawait update({ license: \"AB-1234-0000\" })\n\nawait validate()\n\nawait remove()\n```\n\nValidate license from Rust:\n\n```rust\nuse tauri_plugin_better_auth_license::LicenseManager;\n\n#[tauri::command]\npub async fn your_protected_command(\n\tmanager: tauri::State<'_, LicenseManager>,\n) -> tauri::Result<()> {\n\tmanager.validate().await?;\n\n\t// your code\n}\n```\n\nThe plugin:\n- Generates an X25519 device keypair on first run\n- Stores it in the OS keychain\n- Fetches JSON Web Key Sets (JWKS) from the server\n- Encrypts outbound payloads using the server enc JWK\n- Decrypts inbound JWE responses using the device private key\n- Performs offline + remote JWT validation\n\nNo encryption logic is required in application code.\n\n## License\n\nMIT or MIT/Apache 2.0 where applicable.","readmeFilename":"README.md"}