{"_id":"node-env-resolver-vite","_rev":"15-18947c95839375f631736863da3c4e4b","name":"node-env-resolver-vite","dist-tags":{"latest":"2.4.4"},"versions":{"1.1.0":{"name":"node-env-resolver-vite","version":"1.1.0","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@1.1.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"e7252475a4790b5a31bebb00820bc74ecd1a6eb9","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-1.1.0.tgz","fileCount":8,"integrity":"sha512-qhp5CiGpkssxArxkhZdU0beJ0EpVVKuqspo+Ardb5AUA8pgsGHhSBi9SBMUQxrX9AwSd2w82bihSN7aTvaj+/g==","signatures":[{"sig":"MEYCIQD1+UaHwk3Z2tyRcN3qwbQRyOu6RrCRle4LLtjQ+plx3gIhAKDi7THMoKQc/m0IDA/B4WkcKW69SwApYD9WUumUwexK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59893},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-1.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/tmp/90a47515b95a49877cf26aa2d6581554/node-env-resolver-vite-1.1.0.tgz","_integrity":"sha512-qhp5CiGpkssxArxkhZdU0beJ0EpVVKuqspo+Ardb5AUA8pgsGHhSBi9SBMUQxrX9AwSd2w82bihSN7aTvaj+/g==","_npmVersion":"10.9.3","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"22.20.0","dependencies":{"node-env-resolver":"5.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","vite":"^7.1.10","eslint":"^9.37.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.9.3","@types/node":"^24.7.2"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_1.1.0_1760573326952_0.24512838923495717","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"node-env-resolver-vite","version":"1.1.1","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@1.1.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"f353d746973147297f85feef465b067250779806","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-1.1.1.tgz","fileCount":8,"integrity":"sha512-vkpX5ryr38mV+8OD0JmCofz0iIZLVgFt9LRDIHXB7gzNgabTTOtEP5CpAeaWT8Yh76sjMrokoux5Kh/hn2OFLw==","signatures":[{"sig":"MEQCIHwHxofZ/RwPnCrE1hz1jyqLlruwbYORANizfYDyiQObAiAV3TWfLjKJtuG5joS+C7phg1AMZDNVMj13fcFYi1Vqcg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59893},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-1.1.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/tmp/2cb5477ba4da3c1480b1ddb68d37cddf/node-env-resolver-vite-1.1.1.tgz","_integrity":"sha512-vkpX5ryr38mV+8OD0JmCofz0iIZLVgFt9LRDIHXB7gzNgabTTOtEP5CpAeaWT8Yh76sjMrokoux5Kh/hn2OFLw==","_npmVersion":"10.9.3","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"22.20.0","dependencies":{"node-env-resolver":"5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","vite":"^7.1.10","eslint":"^9.37.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.9.3","@types/node":"^24.7.2"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_1.1.1_1760604201488_0.29343500215235996","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"node-env-resolver-vite","version":"2.0.0","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.0.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"89db2af088b10cd6c76cffd9407aca878bcea834","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.0.0.tgz","fileCount":8,"integrity":"sha512-260mkiLF8l9KPBZv00axO2K77FwHK9Zn88tDU/zEvK/JL8QA5N/uactxVNAnzLW+//DOufvJVsNXc4AU3HC+JA==","signatures":[{"sig":"MEUCIQDkIJKCT++aOLW7C+cg6+FCYOzNYIRHalfov1OrBy1GmAIgUie/x/7fX2wfbh2BEuw26vUpuOdO+tLK55z42WhLA8M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60055},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.0.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/tmp/a47be12f757e9468e9cbc918e473dfe3/node-env-resolver-vite-2.0.0.tgz","_integrity":"sha512-260mkiLF8l9KPBZv00axO2K77FwHK9Zn88tDU/zEvK/JL8QA5N/uactxVNAnzLW+//DOufvJVsNXc4AU3HC+JA==","_npmVersion":"10.9.3","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"22.20.0","dependencies":{"node-env-resolver":"6.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","vite":"^7.1.10","eslint":"^9.37.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.9.3","@types/node":"^24.7.2"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.0.0_1760895560796_0.9327894992767443","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"node-env-resolver-vite","version":"2.0.1","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.0.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"4a18e29b0387f32b20be0355a36e640c6eee6709","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.0.1.tgz","fileCount":8,"integrity":"sha512-0+ddXBwde7h5dNhpeXdYCjFLCgVMNU6QDKDcUg0UDHasZgVTYSFdOCX8Ej1LbErgZL8E7Uzq2ZLvdKAtaiRkCA==","signatures":[{"sig":"MEUCIBkL/BzR/HwsBAxos2zFzzyoQxzCU4T+NqPHflZSBN6lAiEA51R7Nu4RWJJ5E9u7Zc1EXFf1jtikr4SaF3l6exS5WCY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60055},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.0.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/tmp/1fe7485d1b4f69c03395b840df3e2aed/node-env-resolver-vite-2.0.1.tgz","_integrity":"sha512-0+ddXBwde7h5dNhpeXdYCjFLCgVMNU6QDKDcUg0UDHasZgVTYSFdOCX8Ej1LbErgZL8E7Uzq2ZLvdKAtaiRkCA==","_npmVersion":"10.9.4","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"22.21.1","dependencies":{"node-env-resolver":"6.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","vite":"^7.1.10","eslint":"^9.37.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.9.3","@types/node":"^24.7.2"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.0.1_1762807787136_0.9449881020074915","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"node-env-resolver-vite","version":"2.1.0","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.1.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"ac10eba83a55ea5ac454ad8c8251586e2d891d56","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.1.0.tgz","fileCount":8,"integrity":"sha512-q44k9NQaAawrvu53EWCDkfmZDiGau5X5PSsHM+qcrh2qV6LIqoIXnU1bG/muO+NGrFyGiwWPHW/pa2OKWvpMLQ==","signatures":[{"sig":"MEYCIQCMvd3q9Iev4w76A57ew5BPjyIuXkzIFowSEpaPGrkb6AIhAPPUex3xl+iEZ1IUtfu8vyuuCf/pi+C0GaUz6C5urmnB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60056},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/tmp/2acf75f00bb833b8e978148e5d4af499/node-env-resolver-vite-2.1.0.tgz","_integrity":"sha512-q44k9NQaAawrvu53EWCDkfmZDiGau5X5PSsHM+qcrh2qV6LIqoIXnU1bG/muO+NGrFyGiwWPHW/pa2OKWvpMLQ==","_npmVersion":"10.9.4","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"22.21.1","dependencies":{"node-env-resolver":"6.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^7.2.2","eslint":"^9.39.1","vitest":"^4.0.10","prettier":"^3.6.2","typescript":"^5.9.3","@types/node":"^24.10.1"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.1.0_1763506931936_0.9496524280796332","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"node-env-resolver-vite","version":"2.1.1","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.1.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"9915162a2caed498450025903494d88cdadadbb8","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.1.1.tgz","fileCount":8,"integrity":"sha512-yYPUr1ddgVwY171SX0nttf0hv7Hw5/zyKcDsvW6saeyYdea+Na/kGCpU19UZ79mw2mFZRY3kzjF5iEgtu+/Q8w==","signatures":[{"sig":"MEUCIQDXxsEEpqar0ZX53xmhGnALwl38UgSrEAUIQuOzOOwyEAIgc45y98InHJq9/T8CH44ttrCEby2IT2UK43TDndbFFsE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60056},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.1.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/tmp/1bb58d9dfb23a357d0b07c67be8da414/node-env-resolver-vite-2.1.1.tgz","_integrity":"sha512-yYPUr1ddgVwY171SX0nttf0hv7Hw5/zyKcDsvW6saeyYdea+Na/kGCpU19UZ79mw2mFZRY3kzjF5iEgtu+/Q8w==","_npmVersion":"10.9.4","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"22.21.1","dependencies":{"node-env-resolver":"6.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^7.2.4","eslint":"^9.39.1","vitest":"^4.0.14","prettier":"^3.6.2","typescript":"^5.9.3","@types/node":"^24.10.1"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.1.1_1764163164062_0.5551416893513577","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"node-env-resolver-vite","version":"2.2.1","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.2.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/node-env-resolver#readme","bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"dist":{"shasum":"f4e187bd73e678d39d5b594ceca1a8e678eba567","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.2.1.tgz","fileCount":8,"integrity":"sha512-Jirn5hWEgk0kszHV8YaMgD7D+Lu4crSNT9xas4ENDSQouHY0lXVP1KrHPpPOS3Hn7tu/75cfokn+K0qldW2euw==","signatures":[{"sig":"MEQCIHagVpCqUrjOYUe/UfMVOsGjl4bBiWKPGcDBeazpuRLrAiBClkOFGuJWqRDDG0zNR3v2tLdKpwOnGPyjG6BSv0NUjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-env-resolver-vite@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60302},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.2.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ef576548-1de7-4225-861a-4abaafcdb66b"}},"_resolved":"/tmp/6ef2db34ad3bf8ff8688bd16e2d9e9bb/node-env-resolver-vite-2.2.1.tgz","_integrity":"sha512-Jirn5hWEgk0kszHV8YaMgD7D+Lu4crSNT9xas4ENDSQouHY0lXVP1KrHPpPOS3Hn7tu/75cfokn+K0qldW2euw==","repository":{"url":"git+https://github.com/jagreehal/node-env-resolver.git","type":"git","directory":"packages/vite-resolver"},"_npmVersion":"11.7.0","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"node-env-resolver":"6.2.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^7.2.7","eslint":"^9.39.1","vitest":"^4.0.15","prettier":"^3.7.4","typescript":"^5.9.3","@types/node":"^25.0.0"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.2.1_1765438205587_0.9426217615690571","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"node-env-resolver-vite","version":"2.3.0","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.3.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/node-env-resolver#readme","bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"dist":{"shasum":"22f41f92032a27e19a87af8affd8fcc2241adcf6","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.3.0.tgz","fileCount":8,"integrity":"sha512-0BsIljZJogwciiuIUZAIZA9TFXFXmjnXz/0dqAbMWVSiKGhLrB0IV03cDH+G0RdGL/MOPv7cU8vfP6Ow4n50VA==","signatures":[{"sig":"MEQCIDsnThX+Q4FRvdgphMMlqcsSRuQcTpD0bSgw2cH1dXjlAiBzeQ56u9FZPqP93J0+W86S0nGEhrE8zBRyMzuRX+cPmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-env-resolver-vite@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60302},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.3.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ef576548-1de7-4225-861a-4abaafcdb66b"}},"_resolved":"/tmp/e20d135186002196d17845c5a67a89f3/node-env-resolver-vite-2.3.0.tgz","_integrity":"sha512-0BsIljZJogwciiuIUZAIZA9TFXFXmjnXz/0dqAbMWVSiKGhLrB0IV03cDH+G0RdGL/MOPv7cU8vfP6Ow4n50VA==","repository":{"url":"git+https://github.com/jagreehal/node-env-resolver.git","type":"git","directory":"packages/vite-resolver"},"_npmVersion":"11.7.0","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"node-env-resolver":"6.3.0"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^7.3.0","eslint":"^9.39.2","vitest":"^4.0.15","prettier":"^3.7.4","typescript":"^5.9.3","@types/node":"^25.0.2"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.3.0_1765876690110_0.07249801503306186","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"node-env-resolver-vite","version":"2.4.0","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.4.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/node-env-resolver#readme","bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"dist":{"shasum":"7557b7b033abb6d31e6d9417f2cd656323db1c63","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.4.0.tgz","fileCount":8,"integrity":"sha512-W8PVkf8kxK7jhGbXHFA1pF6tYpOnoTTHgi0vZyVRzVz0U/A31/ix3ffb2RT+xx8ROubHF620ZWpVFX7gMn7bXw==","signatures":[{"sig":"MEUCIFE2r95s1Cs69NI7+yt9L7lOpRSmg9KfmxrVwQSD4L+1AiEAyWNsuYow35D7XoiJE8PdInAy5z79cVH0ksbFinGQekc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-env-resolver-vite@2.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60272},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.4.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ef576548-1de7-4225-861a-4abaafcdb66b"}},"_resolved":"/tmp/429c3ee1e18e54240d860c94a9b3eeec/node-env-resolver-vite-2.4.0.tgz","_integrity":"sha512-W8PVkf8kxK7jhGbXHFA1pF6tYpOnoTTHgi0vZyVRzVz0U/A31/ix3ffb2RT+xx8ROubHF620ZWpVFX7gMn7bXw==","repository":{"url":"git+https://github.com/jagreehal/node-env-resolver.git","type":"git","directory":"packages/vite-resolver"},"_npmVersion":"11.11.0","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"20.20.0","dependencies":{"node-env-resolver":"6.4.0"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^7.3.1","eslint":"^10.0.2","vitest":"^4.0.18","prettier":"^3.8.1","typescript":"^5.9.3","@types/node":"^25.3.3"},"peerDependencies":{"vite":"^7.3.1"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.4.0_1772579738383_0.16220435998886118","host":"s3://npm-registry-packages-npm-production"}},"2.4.1":{"name":"node-env-resolver-vite","version":"2.4.1","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.4.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/node-env-resolver#readme","bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"dist":{"shasum":"afcb11925f37060e6949f53094954f29259d235a","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.4.1.tgz","fileCount":8,"integrity":"sha512-0L0lp1Am7knWJAWErZKhs57uMKROdvjx7kuI29TGU6Lld1ZEQatocXResJvV1pYVpKj44r21Gtca+Lh/bYhyzQ==","signatures":[{"sig":"MEUCIGzQgKvfZpmQybyz5UuelSZ4Yi8QBmUuBGVB0qpHFEpHAiEA+MELNZWKdqe8TCQwRuYFw/QGyGI6mKo1KSRMUqlbfmU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-env-resolver-vite@2.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60271},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.4.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ef576548-1de7-4225-861a-4abaafcdb66b"}},"_resolved":"/tmp/ec8c60b3b5b5df892961bb40112fdbd7/node-env-resolver-vite-2.4.1.tgz","_integrity":"sha512-0L0lp1Am7knWJAWErZKhs57uMKROdvjx7kuI29TGU6Lld1ZEQatocXResJvV1pYVpKj44r21Gtca+Lh/bYhyzQ==","repository":{"url":"git+https://github.com/jagreehal/node-env-resolver.git","type":"git","directory":"packages/vite-resolver"},"_npmVersion":"11.11.1","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"20.20.1","dependencies":{"node-env-resolver":"6.5.0"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.0","eslint":"^10.0.3","vitest":"^4.1.0","prettier":"^3.8.1","typescript":"^5.9.3","@types/node":"^25.5.0"},"peerDependencies":{"vite":"^8.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.4.1_1773771851045_0.38262911136293276","host":"s3://npm-registry-packages-npm-production"}},"2.4.2":{"name":"node-env-resolver-vite","version":"2.4.2","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.4.2","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"6af3639dedd2d226f2bf30fc5173c31dcddec2d9","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.4.2.tgz","fileCount":12,"integrity":"sha512-6wI7l2s8H+KATXwiOLRrVDVQ+164lHBAtHwaBihJ/zqKRs9ruIgwlb56k9zq1dPhr9+fVTk97gk6FfU0R2CVFQ==","signatures":[{"sig":"MEYCIQDEFf6SpwEK9zfjPh+zRDi32/HB9DeLaa7q1j5e1VupmQIhAIevwe0bP/wLaFyXStRuefRWxeSTzsEXxKtv71iRh9u5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-env-resolver-vite@2.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4578725},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ef576548-1de7-4225-861a-4abaafcdb66b"}},"deprecated":"SECURITY: compromised supply-chain build (2026-06-04 worm) — do not use; upgrade to a known-good release.","repository":{"url":"https://github.com/jagreehal/node-env-resolver.git","type":"git","directory":"packages/vite-resolver"},"description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"dependencies":{"node-env-resolver":"6.5.0"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.0","eslint":"^10.0.3","vitest":"^4.1.0","prettier":"^3.8.1","typescript":"^5.9.3","@types/node":"^25.5.0"},"peerDependencies":{"vite":"^8.0.0"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.4.2_1780532828915_0.35321538923605056","host":"s3://npm-registry-packages-npm-production"}},"2.4.3":{"name":"node-env-resolver-vite","version":"2.4.3","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"url":"https://jagreehal.com","name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com"},"license":"MIT","_id":"node-env-resolver-vite@2.4.3","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/node-env-resolver#readme","bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"dist":{"shasum":"3a9f922d662281a742386c56ef224050f0431dc1","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.4.3.tgz","fileCount":8,"integrity":"sha512-/a1hf3+MpHRB+YMLLHUG1RCYVcTFviVFaZTCReMo6jBSw4JPlSmhCGGxlTwfn/+WqYyTnu16FtNgG+hPLKb+Ow==","signatures":[{"sig":"MEUCIQCZwDxFH0ijOSvro40wqAS/gINM5B/YL4i/KW2bxXMmKwIgBzhDdBOYAU2ESSDRV8CAlaQsBbUQ3ljw1eRb0MRowe8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60456},"main":"./dist/index.js","type":"module","_from":"file:node-env-resolver-vite-2.4.3.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","import":"./dist/plugin.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest run","build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_resolved":"/private/var/folders/sp/__ydkqk53ss4hb4k3wbv1wbc0000gn/T/447cf58aa0889468e3816e937ae6bedc/node-env-resolver-vite-2.4.3.tgz","_integrity":"sha512-/a1hf3+MpHRB+YMLLHUG1RCYVcTFviVFaZTCReMo6jBSw4JPlSmhCGGxlTwfn/+WqYyTnu16FtNgG+hPLKb+Ow==","repository":{"url":"git+https://github.com/jagreehal/node-env-resolver.git","type":"git","directory":"packages/vite-resolver"},"_npmVersion":"11.13.0","description":"Zero-config Vite integration for node-env-resolver with client/server split","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"node-env-resolver":"6.5.2"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.8","eslint":"^10.2.0","vitest":"^4.1.4","prettier":"^3.8.2","typescript":"^6.0.2","@types/node":"^25.6.0"},"peerDependencies":{"vite":"^8.0.8"},"peerDependenciesMeta":{"vite":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/node-env-resolver-vite_2.4.3_1780866128256_0.24621938404649657","host":"s3://npm-registry-packages-npm-production"}},"2.4.4":{"name":"node-env-resolver-vite","version":"2.4.4","description":"Zero-config Vite integration for node-env-resolver with client/server split","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"},"./plugin":{"import":"./dist/plugin.js","types":"./dist/plugin.d.ts"}},"typesVersions":{"*":{"plugin":["./dist/plugin.d.ts"]}},"keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"author":{"name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com","url":"https://jagreehal.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/jagreehal/node-env-resolver.git","directory":"packages/vite-resolver"},"sideEffects":false,"publishConfig":{"access":"public"},"peerDependencies":{"vite":"^8.0.16"},"peerDependenciesMeta":{"vite":{"optional":true}},"dependencies":{"node-env-resolver":"6.6.0"},"devDependencies":{"@types/node":"^25.9.2","eslint":"^10.4.1","prettier":"^3.8.3","tsup":"^8.5.1","typescript":"^6.0.3","vite":"^8.0.16","vitest":"^4.1.8"},"engines":{"node":">=18"},"scripts":{"build":"NODE_ENV=production tsup","build:dev":"tsup","build:dts":"tsc --emitDeclarationOnly","type-check":"tsc -p tsconfig.json --noEmit","lint":"eslint src/","test":"vitest run","dev":"tsup --watch"},"_id":"node-env-resolver-vite@2.4.4","bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"homepage":"https://github.com/jagreehal/node-env-resolver#readme","_integrity":"sha512-cph1dsWADQLGlPV61vM4kL/9250SbWHvN7X6i/uHMisuzu2VravnII7TEIoRJDJivMWVJAUNrdmImHMhXjI2Zw==","_resolved":"/tmp/fbbc98122bcba28ac75c42ecc64aa006/node-env-resolver-vite-2.4.4.tgz","_from":"file:node-env-resolver-vite-2.4.4.tgz","_nodeVersion":"20.20.2","_npmVersion":"11.16.0","dist":{"integrity":"sha512-cph1dsWADQLGlPV61vM4kL/9250SbWHvN7X6i/uHMisuzu2VravnII7TEIoRJDJivMWVJAUNrdmImHMhXjI2Zw==","shasum":"6d1d681904fb0c6792bb63c4c1ef59d2aab09ef9","tarball":"https://registry.npmjs.org/node-env-resolver-vite/-/node-env-resolver-vite-2.4.4.tgz","fileCount":8,"unpackedSize":60458,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-env-resolver-vite@2.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCQVDmhDqSuPf4KI6FZ2C6yN9fVNqZmfA7OxEsgS0byhwIhANFNgI62qcKlN/ye+bdaYUPqh09fpKwTVktcaVB/bulz"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:450e608b-40ad-470e-a05c-c8da18d974b7"}},"directories":{},"maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/node-env-resolver-vite_2.4.4_1781157922383_0.9397109774565138"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-16T00:08:46.882Z","modified":"2026-06-11T06:05:22.769Z","1.1.0":"2025-10-16T00:08:47.129Z","1.1.1":"2025-10-16T08:43:21.677Z","2.0.0":"2025-10-19T17:39:21.017Z","2.0.1":"2025-11-10T20:49:47.322Z","2.1.0":"2025-11-18T23:02:12.189Z","2.1.1":"2025-11-26T13:19:24.270Z","2.2.1":"2025-12-11T07:30:05.733Z","2.3.0":"2025-12-16T09:18:10.252Z","2.4.0":"2026-03-03T23:15:38.527Z","2.4.1":"2026-03-17T18:24:11.188Z","2.4.2":"2026-06-04T00:27:09.126Z","2.4.3":"2026-06-07T21:02:08.402Z","2.4.4":"2026-06-11T06:05:22.517Z"},"bugs":{"url":"https://github.com/jagreehal/node-env-resolver/issues"},"author":{"name":"Jagvinder Singh Reehal","email":"jag@jagreehal.com","url":"https://jagreehal.com"},"license":"MIT","homepage":"https://github.com/jagreehal/node-env-resolver#readme","keywords":["vite","environment","env","config","typescript","type-safe","zero-config","vue","react","svelte","solid","astro"],"repository":{"type":"git","url":"git+https://github.com/jagreehal/node-env-resolver.git","directory":"packages/vite-resolver"},"description":"Zero-config Vite integration for node-env-resolver with client/server split","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"readme":"# node-env-resolver-vite\n\nVite integration with automatic client/server environment variable splitting.\n\n[![npm version](https://img.shields.io/npm/v/node-env-resolver-vite)](https://www.npmjs.com/package/node-env-resolver-vite)\n\n## Features\n\n- ✅ Automatic client/server split\n- ✅ Runtime protection to prevent leaking server vars to client\n- ✅ Full TypeScript support with IntelliSense\n- ✅ **Auto-generate TypeScript definitions** for `import.meta.env`\n- ✅ Works with Vite 4.x, 5.x, 6.x, 7.x, 8.x\n- ✅ Framework agnostic (Vue, React, Svelte, Solid, Astro)\n- ✅ Zero configuration required\n- ✅ Supports all validator types (basic and advanced)\n- ✅ Optional Vite plugin for config-time integration\n\n## Install\n\n```bash\nnpm install node-env-resolver-vite\n# or\npnpm add node-env-resolver-vite\n# or\nyarn add node-env-resolver-vite\n```\n\n## Quick Start\n\nCreate `env.ts` in your project root:\n\n```typescript\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve({\n  server: {\n    DATABASE_URL: postgres(),\n    API_SECRET: string(),\n    PORT: 'port:5173',\n  },\n  client: {\n    VITE_API_URL: url(),\n    VITE_ENABLE_ANALYTICS: false,\n    VITE_GA_ID: string({ optional: true }),\n  },\n});\n```\n\nUse in your app:\n\n```typescript\n// Server code (vite.config.ts, SSR, Node.js)\nimport { env } from './env';\n\nconsole.log(env.server.DATABASE_URL); // ✅ Works\nconsole.log(env.client.VITE_API_URL); // ✅ Works\n```\n\n```typescript\n// Client code (browser)\nimport { env } from './env';\n\nconsole.log(env.client.VITE_API_URL); // ✅ Works\nconsole.log(env.server.DATABASE_URL); // ❌ Throws error\n```\n\n## Safe Resolve (Zod-like Pattern)\n\nLike Zod's `parse()` vs `safeParse()`, you can choose between throwing errors or getting result objects:\n\n```typescript\nimport { resolve, safeResolve } from 'node-env-resolver-vite';\n\n// ❌ Throws on validation failure (like Zod's parse())\nexport const env = resolve({\n  server: {\n    DATABASE_URL: postgres(),\n    API_SECRET: string(),\n  },\n  client: {\n    VITE_API_URL: url(),\n  },\n});\n\n// ✅ Returns result object (like Zod's safeParse())\nconst result = safeResolve({\n  server: {\n    DATABASE_URL: postgres(),\n    API_SECRET: string(),\n  },\n  client: {\n    VITE_API_URL: url(),\n  },\n});\n\nif (result.success) {\n  export const env = result.data;\n  // env.server and env.client are fully typed\n} else {\n  console.error('Environment validation failed:', result.error);\n  process.exit(1);\n}\n```\n\n**Use cases:**\n\n- `resolve()` - Throws on error (simpler, fail-fast)\n- `safeResolve()` - Returns `{ success, data?, error? }` (graceful error handling)\n\n## Environment Files\n\nThe package automatically loads from Vite's standard env files:\n\n```bash\n.env                # Loaded in all cases\n.env.local          # Local overrides (gitignored)\n.env.[mode]         # Mode-specific (e.g., .env.development)\n.env.[mode].local   # Mode-specific local overrides\n```\n\nExample `.env.local`:\n\n```bash\n# Server-only (no VITE_ prefix)\nDATABASE_URL=postgres://localhost:5432/myapp\nAPI_SECRET=secret123\nPORT=5173\n\n# Client-accessible (VITE_ prefix required)\nVITE_API_URL=https://api.example.com\nVITE_ENABLE_ANALYTICS=false\nVITE_GA_ID=GA-123456\n```\n\n## Validation\n\nUse the same shorthand syntax as the core package:\n\n```typescript\nexport const env = resolve({\n  server: {\n    PORT: 'port:5173',\n    DATABASE_URL: postgres(),\n    NODE_ENV: ['development', 'production', 'test'] as const,\n    API_KEY: string(),\n    MAX_CONNECTIONS: 'number',\n    TIMEOUT: 'duration', // e.g., '30s', '5m'\n  },\n  client: {\n    VITE_API_URL: url(),\n    VITE_ENABLE_ANALYTICS: false,\n    VITE_GA_ID: string({ optional: true }),\n    VITE_FEATURE_FLAGS: 'string[]', // Comma-separated\n  },\n});\n```\n\nTypeScript knows all the types:\n\n```typescript\nenv.server.PORT; // number\nenv.server.DATABASE_URL; // string\nenv.server.NODE_ENV; // 'development' | 'production' | 'test'\nenv.server.MAX_CONNECTIONS; // number\nenv.server.TIMEOUT; // number (milliseconds)\nenv.client.VITE_API_URL; // string\nenv.client.VITE_ENABLE_ANALYTICS; // boolean\nenv.client.VITE_GA_ID; // string | undefined\nenv.client.VITE_FEATURE_FLAGS; // string[]\n```\n\n## Runtime Protection\n\nThe package prevents server variables from being accessed in client code:\n\n```typescript\n// Client code (browser)\nimport { env } from './env';\n\nconsole.log(env.server.DATABASE_URL);\n// Error: Cannot access server environment variable 'DATABASE_URL' in client-side code.\n// Server variables are only available in server context (vite.config.ts, SSR, build scripts).\n// If you need this data on the client, consider:\n//   - Moving it to the client schema with VITE_ prefix\n//   - Fetching it via an API endpoint\n//   - Using SSR to pass data to client components\n```\n\nThis protection works in both development and production.\n\nYou can disable runtime protection if needed:\n\n```typescript\nexport const env = resolve(\n  {\n    server: {\n      DATABASE_URL: postgres(),\n    },\n    client: {\n      VITE_API_URL: url(),\n    },\n  },\n  {\n    runtimeProtection: false, // Disable server var protection\n  }\n);\n```\n\n## TypeScript IntelliSense\n\n### Auto-Generate Types (Recommended)\n\nUse the Vite plugin to automatically generate TypeScript definitions:\n\n```typescript\n// vite.config.ts\nimport { defineConfig } from 'vite';\nimport { nodeEnvResolverPlugin } from 'node-env-resolver-vite/plugin';\n\nexport default defineConfig({\n  plugins: [\n    nodeEnvResolverPlugin({\n      server: {\n        DATABASE_URL: postgres(),\n        API_SECRET: string(),\n      },\n      client: {\n        VITE_API_URL: url(),\n        VITE_ENABLE_ANALYTICS: false,\n        VITE_GA_ID: string({ optional: true }),\n      },\n      generateTypes: 'src/vite-env.d.ts', // ✨ Auto-generates types!\n    }),\n  ],\n});\n```\n\nThis automatically generates `src/vite-env.d.ts` with proper TypeScript types:\n\n```typescript\n/// <reference types=\"vite/client\" />\n\n/**\n * Auto-generated by node-env-resolver-vite\n * DO NOT EDIT MANUALLY - Changes will be overwritten\n */\n\ninterface ImportMetaEnv {\n  readonly VITE_API_URL: string;\n  readonly VITE_ENABLE_ANALYTICS: boolean;\n  readonly VITE_GA_ID: string | undefined;\n}\n\ninterface ImportMeta {\n  readonly env: ImportMetaEnv;\n}\n```\n\n**Features:**\n\n- ✅ Types auto-update when you change your schema\n- ✅ Proper type inference (url → string, false → boolean, etc.)\n- ✅ Won't overwrite files with custom content\n- ✅ Only runs in development mode\n\n### Manual Types (Alternative)\n\nYou can also manually create `vite-env.d.ts`:\n\n```typescript\n/// <reference types=\"vite/client\" />\n\ninterface ImportMetaEnv {\n  readonly VITE_API_URL: string;\n  readonly VITE_ENABLE_ANALYTICS: boolean;\n  readonly VITE_GA_ID?: string;\n}\n\ninterface ImportMeta {\n  readonly env: ImportMetaEnv;\n}\n```\n\nThis gives you autocomplete for `import.meta.env.VITE_*` in your IDE.\n\n## Vite Plugin\n\nFor config-time integration and auto-generated types, use the Vite plugin:\n\n```typescript\n// vite.config.ts\nimport { defineConfig } from 'vite';\nimport { nodeEnvResolverPlugin } from 'node-env-resolver-vite/plugin';\n\nexport default defineConfig({\n  plugins: [\n    nodeEnvResolverPlugin({\n      server: {\n        DATABASE_URL: postgres(),\n        API_SECRET: string(),\n      },\n      client: {\n        VITE_API_URL: url(),\n        VITE_ENABLE_ANALYTICS: false,\n      },\n      // Auto-generate TypeScript definitions (optional)\n      generateTypes: 'src/vite-env.d.ts',\n    }),\n  ],\n});\n```\n\n**Plugin Features:**\n\n- ✅ Validates env vars at config resolution time\n- ✅ Fails fast if validation errors occur\n- ✅ Logs validation status\n- ✅ Auto-generates TypeScript definitions\n- ✅ Optionally injects client vars into Vite's define\n\n## Options\n\n```typescript\nexport const env = resolve(\n  {\n    server: {\n      /* ... */\n    },\n    client: {\n      /* ... */\n    },\n  },\n  {\n    clientPrefix: 'VITE_', // Default prefix\n    runtimeProtection: true, // Enable runtime checks (default: true)\n    expandVars: true, // Enable ${VAR} expansion (default: true)\n  }\n);\n```\n\n## Framework Examples\n\n### React + Vite\n\n```typescript\n// env.ts\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve({\n  server: {\n    DATABASE_URL: postgres(),\n  },\n  client: {\n    VITE_API_URL: url(),\n  }\n});\n\n// App.tsx\nimport { env } from './env';\n\nfunction App() {\n  return <div>API: {env.client.VITE_API_URL}</div>;\n}\n```\n\n### Vue + Vite\n\n```typescript\n// env.ts\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve({\n  server: {},\n  client: {\n    VITE_API_URL: url(),\n  }\n});\n\n// App.vue\n<script setup lang=\"ts\">\nimport { env } from './env';\n</script>\n\n<template>\n  <div>API: {{ env.client.VITE_API_URL }}</div>\n</template>\n```\n\n### SvelteKit + Vite\n\n```typescript\n// env.ts\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve(\n  {\n    server: {\n      DATABASE_URL: postgres(),\n    },\n    client: {\n      VITE_PUBLIC_API_URL: url(),\n    },\n  },\n  {\n    clientPrefix: 'VITE_PUBLIC_', // SvelteKit uses PUBLIC_ internally\n  }\n);\n```\n\n### Solid + Vite\n\n```typescript\n// env.ts\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve({\n  server: {},\n  client: {\n    VITE_API_URL: url(),\n  }\n});\n\n// App.tsx\nimport { env } from './env';\n\nfunction App() {\n  return <div>API: {env.client.VITE_API_URL}</div>;\n}\n```\n\n### Astro + Vite\n\n```typescript\n// env.ts\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve(\n  {\n    server: {\n      DATABASE_URL: postgres(),\n    },\n    client: {\n      VITE_PUBLIC_API_URL: url(),\n    },\n  },\n  {\n    clientPrefix: 'VITE_PUBLIC_', // Astro convention\n  }\n);\n```\n\n## SSR Support\n\nWorks seamlessly with Vite's SSR mode:\n\n```typescript\n// server.ts (SSR entry)\nimport { env } from './env';\n\n// Both server and client vars accessible in SSR context\nconsole.log(env.server.DATABASE_URL); // ✅ Works\nconsole.log(env.client.VITE_API_URL); // ✅ Works\n\n// client.ts (browser entry)\nimport { env } from './env';\n\nconsole.log(env.server.DATABASE_URL); // ❌ Throws error\nconsole.log(env.client.VITE_API_URL); // ✅ Works\n```\n\n## Production Security\n\nIn production, `.env` files are automatically ignored. Production platforms inject variables via `process.env`.\n\n```typescript\nexport const env = resolve({\n  server: {\n    DATABASE_URL: postgres(),\n    API_SECRET: string(),\n  },\n  client: {\n    VITE_API_URL: url(),\n  },\n});\n```\n\n**Best practices:**\n\n- Never commit `.env.local` files\n- Use platform environment variables in production (Vercel, Netlify, AWS, etc.)\n- Keep server secrets in `server` schema only\n- Only expose public data in `client` schema\n\n## Complete Example\n\n```typescript\n// env.ts\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve({\n  server: {\n    // Database\n    DATABASE_URL: postgres(),\n    DB_POOL_SIZE: 10,\n\n    // External APIs\n    STRIPE_SECRET_KEY: string(),\n    OPENAI_API_KEY: string(),\n\n    // App configuration\n    NODE_ENV: ['development', 'production', 'test'] as const,\n    PORT: 'port:5173',\n    LOG_LEVEL: ['debug', 'info', 'warn', 'error'] as const,\n  },\n  client: {\n    // Public API endpoints\n    VITE_API_URL: url(),\n    VITE_WS_URL: url(),\n\n    // Feature flags\n    VITE_ENABLE_ANALYTICS: false,\n    VITE_ENABLE_DARK_MODE: true,\n    VITE_FEATURE_FLAGS: 'string[]',\n\n    // Public keys\n    VITE_STRIPE_PUBLISHABLE_KEY: string(),\n    VITE_GA_ID: string({ optional: true }),\n\n    // App info\n    VITE_APP_VERSION: string(),\n  },\n});\n```\n\n## Troubleshooting\n\n**Variables not loading?**\n\n- Check file names and locations\n- Ensure client variables have `VITE_` prefix\n- Restart dev server after adding new variables\n- Verify `.env` files are in project root\n\n**TypeScript errors?**\n\n- Verify schema matches `.env` files\n- Restart TypeScript server in your editor\n- Check for typos in variable names\n\n**Runtime errors in browser?**\n\n- Don't access `env.server.*` in client code\n- Use `env.client.*` for browser-accessible values\n- Check browser console for helpful error messages\n\n**Production issues?**\n\n- Verify platform environment variables are set\n- Ensure secrets aren't sourced from `.env` files\n- Confirm client variables are properly prefixed with `VITE_`\n\n## Migration from Vite Built-in\n\nBefore (Vite built-in):\n\n```typescript\n// No validation, no types\nconst apiUrl = import.meta.env.VITE_API_URL; // string | undefined\nconst port = import.meta.env.PORT; // string | undefined\n```\n\nAfter (node-env-resolver-vite):\n\n```typescript\nimport { resolve } from 'node-env-resolver-vite';\n\nexport const env = resolve({\n  server: {\n    PORT: 'port:5173',\n  },\n  client: {\n    VITE_API_URL: url(),\n  },\n});\n\n// Fully typed, validated at startup\nenv.server.PORT; // number\nenv.client.VITE_API_URL; // string (validated URL)\n```\n\n## Related Packages\n\n- [node-env-resolver](https://www.npmjs.com/package/node-env-resolver) - Core package\n- [node-env-resolver-nextjs](https://www.npmjs.com/package/node-env-resolver-nextjs) - Next.js integration\n- [node-env-resolver-aws](https://www.npmjs.com/package/node-env-resolver-aws) - AWS Secrets Manager & SSM\n\n## License\n\nMIT\n","readmeFilename":"README.md"}