{"_id":"@alt-javascript/common","_rev":"6-6fc342b3301c782218dd165ab58be811","name":"@alt-javascript/common","dist-tags":{"latest":"3.0.7"},"versions":{"3.0.2":{"name":"@alt-javascript/common","version":"3.0.2","keywords":["alt-javascript","common","shared","utilities"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/common@3.0.2","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"76a837c6e807a3b8a74a62d8a751dfbf90e6a909","tarball":"https://registry.npmjs.org/@alt-javascript/common/-/common-3.0.2.tgz","fileCount":4,"integrity":"sha512-nRUGj2Wgwb1KoCQy+kgpuWJaRz8A/9H/JR/a2QfVa07O8NVgZoNGlKhnvKqxiWAKrnUbeq8mJCZsgZNOhSdEMw==","signatures":[{"sig":"MEUCIDwLxbJH6SoLu1wIvbPUMuBpB1M2umcTCjYDmno2CV1gAiEAyJ55ZQFD0Y0YYbOLbXlXPrQ2GsKaZc9bK839YIpyqk4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6377},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"df365b8a2ff98a6a5f18da02ee01007ea5baa69b","scripts":{"test":"echo 'no tests yet'","build":"rollup -c rollup.config.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/common"},"_npmVersion":"11.12.0","description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/common_3.0.2_1774067783247_0.43395330267428367","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"@alt-javascript/common","version":"3.0.3","keywords":["alt-javascript","common","shared","utilities"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/common@3.0.3","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"78ad6bbfb53b2056862d1c683ee5410b22bb7a46","tarball":"https://registry.npmjs.org/@alt-javascript/common/-/common-3.0.3.tgz","fileCount":4,"integrity":"sha512-U5kYXG2cdcj65Y2uYSJ0wxPl6FeOHpE5nk9Zob2roX11+b4MyyQRMzcRtGSBjSPaG0ny8MLpcJg/9Hl8J21FUA==","signatures":[{"sig":"MEUCIQC9P/OkTzy5XtVUtDDegB5NVAgTs5IbQPhEZs8/mC6COwIgRKI555baHcYztiME8uTd4UKEFGNU3gW8kb9JGEdHa0Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6377},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"e64fbbad53825fef88c3a0976208f27893822519","scripts":{"test":"echo 'no tests yet'","build":"rollup -c rollup.config.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/common"},"_npmVersion":"11.12.0","description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/common_3.0.3_1774068672035_0.5277608715103892","host":"s3://npm-registry-packages-npm-production"}},"3.0.4":{"name":"@alt-javascript/common","version":"3.0.4","keywords":["alt-javascript","common","shared","utilities"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/common@3.0.4","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"dedcbb0f48f4125535b96aaa2a5ca8df37be32c2","tarball":"https://registry.npmjs.org/@alt-javascript/common/-/common-3.0.4.tgz","fileCount":4,"integrity":"sha512-fWVtvW4ZB6vQViX7KgD/6JVjoAVsC91ydyc/9hvZde0XEDY0O1baSinBTKCUOO1q7qwkWsiGXUMTCZC9FV3Yzw==","signatures":[{"sig":"MEQCIDoXhZLdTDD/aBSUjUMKkY/VWNppI1VFBU4MWL76OGClAiBZ8NZN8LNmyo8P76Q4XA1ACB4ojH4+ZOgyTG1/itz9Pw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6377},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"d8de2e8b94151a92fd0c9259d906dfe6d66e11f5","scripts":{"test":"echo 'no tests yet'","build":"rollup -c rollup.config.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/common"},"_npmVersion":"11.12.0","description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/common_3.0.4_1774422723141_0.5240381381180568","host":"s3://npm-registry-packages-npm-production"}},"3.0.5":{"name":"@alt-javascript/common","version":"3.0.5","keywords":["alt-javascript","common","shared","utilities"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/common@3.0.5","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"45775cb64ca106ab514f6f11e644948a9221845a","tarball":"https://registry.npmjs.org/@alt-javascript/common/-/common-3.0.5.tgz","fileCount":4,"integrity":"sha512-qLNCDN0+AKwRyBYarDZqG1c2wrAGRSp+YbFwAfRGiYaec4U75JIIvrFFvp+f647zdXmIVBTGpqcCDX9Y6QnxGA==","signatures":[{"sig":"MEUCIH5htonnbLQDqQqlNSZ/0nJJXeYSH/deV+QvqeaW80v4AiEAveAWqUdbVZDltI0rwwf3ZZ1E7gHovIjt5boBOmyCITw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6377},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"925db7483dcdfbfdb2571e74d3ae4bbfa494a126","scripts":{"test":"echo 'no tests yet'","build":"rollup -c rollup.config.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/common"},"_npmVersion":"11.12.0","description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/common_3.0.5_1774428781482_0.7016387263370985","host":"s3://npm-registry-packages-npm-production"}},"3.0.6":{"name":"@alt-javascript/common","version":"3.0.6","keywords":["alt-javascript","common","shared","utilities"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/common@3.0.6","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"f613870625798da674e8f0158274385a698f7ae2","tarball":"https://registry.npmjs.org/@alt-javascript/common/-/common-3.0.6.tgz","fileCount":4,"integrity":"sha512-8tKZMJ7e/DHUIJJy+VCwYISIsOXGcMiJJALhXr+hwqKYAmaN1NZ3oURTa7ITI8LzibrR0yxCdmmeKiib0OWY6A==","signatures":[{"sig":"MEUCIFSoqggEisYxeGtaVu1uYO+0Q73G3qoMjn+8oCTVu5xwAiEA8hxiB1cLNx4f496vJSVvHis3ECKE8HASZZsma0oO4qg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6377},"main":"index.js","type":"module","engines":{"node":">=20"},"exports":{".":"./index.js"},"gitHead":"ba43e8807bc28583f98edddce84849875544bd51","scripts":{"test":"echo 'no tests yet'","build":"rollup -c rollup.config.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/common"},"_npmVersion":"11.12.1","description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/common_3.0.6_1774553442977_0.8097640140682121","host":"s3://npm-registry-packages-npm-production"}},"3.0.7":{"name":"@alt-javascript/common","version":"3.0.7","type":"module","main":"index.js","exports":{".":"./index.js"},"scripts":{"build":"rollup -c rollup.config.js","prepublishOnly":"npm run build","test":"echo 'no tests yet'"},"publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","license":"MIT","author":{"name":"Craig Parravicini"},"contributors":[{"name":"Claude","url":"Anthropic"},{"name":"Spring Framework","url":"VMware/Broadcom"}],"keywords":["alt-javascript","common","shared","utilities"],"repository":{"type":"git","url":"git+https://github.com/alt-javascript/boot.git","directory":"packages/common"},"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"engines":{"node":">=20"},"gitHead":"01bd2e99058af03b3213c09c07ba87985bfeeeca","_id":"@alt-javascript/common@3.0.7","_nodeVersion":"24.14.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-s/5ib4AaAkDURFKpe6eLfNJ6UWhS5JDdOmDjzCzQU+Bx+L+bb53PKF/Ryfj79qrzwIuSgNmDfXNyb2FpBFxoFw==","shasum":"7dfe6f7e86571c32a50f1f3d3f5f35329c4ee2a6","tarball":"https://registry.npmjs.org/@alt-javascript/common/-/common-3.0.7.tgz","fileCount":4,"unpackedSize":6458,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH9U7V9O+hZZDtOcN1PLfVtT4zt3cr8lSc9QhJst0OqSAiA5lXziDzaLtVfnUNfJP0YIizTu0bucbDgmOgiStLR1vg=="}]},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"directories":{},"maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/common_3.0.7_1774553626284_0.851398149320604"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-21T04:36:23.133Z","modified":"2026-03-26T19:33:46.535Z","3.0.2":"2026-03-21T04:36:23.442Z","3.0.3":"2026-03-21T04:51:12.169Z","3.0.4":"2026-03-25T07:12:03.284Z","3.0.5":"2026-03-25T08:53:01.656Z","3.0.6":"2026-03-26T19:30:43.104Z","3.0.7":"2026-03-26T19:33:46.415Z"},"bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"author":{"name":"Craig Parravicini"},"license":"MIT","homepage":"https://github.com/alt-javascript/boot/tree/main/packages/common#readme","keywords":["alt-javascript","common","shared","utilities"],"repository":{"type":"git","url":"git+https://github.com/alt-javascript/boot.git","directory":"packages/common"},"description":"Shared kernel for the alt-javascript framework — global-ref resolution, environment detection, utilities","contributors":[{"name":"Claude","url":"Anthropic"},{"name":"Spring Framework","url":"VMware/Broadcom"}],"maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"readme":"# @alt-javascript/common\n\n[![Language](https://img.shields.io/badge/language-JavaScript-yellow.svg)](https://developer.mozilla.org/en-US/docs/Web/JavaScript)\n[![npm version](https://img.shields.io/npm/v/%40alt-javascript%2Fcommon)](https://www.npmjs.com/package/@alt-javascript/common)\n[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n[![CI](https://github.com/alt-javascript/boot/actions/workflows/node.js.yml/badge.svg)](https://github.com/alt-javascript/boot/actions/workflows/node.js.yml)\n\nShared kernel for the `@alt-javascript` framework. Provides environment detection, global reference resolution, and common utilities used by all other packages.\n\n**Part of the [@alt-javascript](https://github.com/alt-javascript/boot) monorepo.**\n\n## Install\n\n```bash\nnpm install @alt-javascript/common\n```\n\n## API\n\n```javascript\nimport { detectBrowser, getGlobalRef, getGlobalRoot, isPlainObject } from '@alt-javascript/common';\n```\n\n| Function | Description |\n|---|---|\n| `detectBrowser()` | Returns `true` if running in a browser (`window` exists) |\n| `getGlobalRef()` | Returns `window` (browser) or `globalThis` (Node.js) |\n| `getGlobalRoot(key)` | Read from `boot.contexts.root[key]` on the global object |\n| `isPlainObject(value)` | Returns `true` for plain objects (not arrays, null, Date, etc.) |\n\n## Usage\n\n```javascript\nimport { detectBrowser, getGlobalRef } from '@alt-javascript/common';\n\nif (detectBrowser()) {\n  console.log('Running in browser');\n} else {\n  console.log('Running in Node.js');\n}\n\nconst global = getGlobalRef();\n// global === window (browser) or globalThis (Node.js)\n```\n\n## Why\n\nPreviously, environment detection and global reference logic was duplicated across Boot.js, ApplicationContext.js, ConfigFactory.js, and LoggerFactory.js. This package is the single source of truth.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}