{"_id":"@alt-javascript/boot-react","_rev":"8-8e1b078ec3b423c9ec6bb10310b63f75","name":"@alt-javascript/boot-react","dist-tags":{"latest":"3.0.7"},"versions":{"3.0.0":{"name":"@alt-javascript/boot-react","version":"3.0.0","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@3.0.0","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"42ae025f90b974412add82573d16b4ffee9065e9","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.0.tgz","fileCount":4,"integrity":"sha512-65OtauwWFmKeNlb65Q3+h9lwz30VzGCDN3sWRSDlr5bhufNrY7JEMT1kdkhwyrwJ3hI4vEh6tKqV6l2xL41qvg==","signatures":[{"sig":"MEUCIQDNIevboxk7uq9vjPCmN3piT0vT99J6LGZ3l7WBkyBcYAIgaB8DTY3JzDjmQ10mss9cCL40F+Sd8UJfC8suIJl3HiM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12857},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"6bc9996e5d4f03d52e441c7d89e4132d0cfbeebb","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.0","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.0","@alt-javascript/config":"3.0.0","@alt-javascript/logger":"3.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.0_1774062732707_0.7320719676082283","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@alt-javascript/boot-react","version":"3.0.1","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@3.0.1","maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"contributors":[{"url":"Anthropic","name":"Claude"}],"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"63c7913ca2e600eb52a630788c6910ccd234ff25","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.1.tgz","fileCount":4,"integrity":"sha512-yVwX2vvrAv6UBEAlhYwFkZHNtebyb9wnQ5cVbX4rjnjq5Bei3GPqwThh9RFCNcnf57fOsmr98X2Hfj00E5gPUA==","signatures":[{"sig":"MEYCIQDoFRP3nuTSnHCxeYJkhnkW21gIsIEdYShM1x84rGn3TwIhANrYy0jp6HrDooS5444jEHgJ2NnNct7VkDQ4Ur1t+pnp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12860},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"59023df5b83098ff9e536f4b5821dd38b053d6be","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.0","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.1","@alt-javascript/config":"3.0.1","@alt-javascript/logger":"3.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.1_1774067478729_0.24379759386707534","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"@alt-javascript/boot-react","version":"3.0.2","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@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/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"d47b8034f8ba7068a0d6120051022c01666c4ed0","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.2.tgz","fileCount":4,"integrity":"sha512-8wNG+/HcWRTeFD6IKJ6KtZXRidse9Sz1ecCARHMPzXl3qNu0lRz02LHa5RQFUzYU96rsXr0R03OshiiGjQvbJw==","signatures":[{"sig":"MEUCIQC4en5/bM/Dq4++i45bQKyYv16k+PtXfBd+QgzmQO4QOAIgHJjvGm84A39bavm4rTScVNz3s2Rbo+VtPwMV3M16lwQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12860},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"df365b8a2ff98a6a5f18da02ee01007ea5baa69b","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.0","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.2","@alt-javascript/config":"3.0.2","@alt-javascript/logger":"3.0.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.2_1774067777949_0.6885749472024301","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"@alt-javascript/boot-react","version":"3.0.3","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@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/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"a540cc94c04c18868804321c85d78015b0736542","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.3.tgz","fileCount":4,"integrity":"sha512-1ABSYxbp59IElNxctIBb94pg3Ot1pRYqy/yHGT8m+JoW9kxhYQKpg334Mu8kT5C0CxgnHuodWs9cmm5E7Vnazg==","signatures":[{"sig":"MEYCIQC0Uj3uJMQuwdxsvUzecBGvRI8glzCOpZt5gslWNmIghgIhAPw+V1xtT5dkyiHrRAvy9qqe3dkCHNTOILCg5Mx1+s6A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12860},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"e64fbbad53825fef88c3a0976208f27893822519","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.0","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.3","@alt-javascript/config":"3.0.3","@alt-javascript/logger":"3.0.3"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.3_1774068666624_0.5092396863483688","host":"s3://npm-registry-packages-npm-production"}},"3.0.4":{"name":"@alt-javascript/boot-react","version":"3.0.4","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@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/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"e1cb53d38c4e09de4ccb7f2b5f9bba55d718e051","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.4.tgz","fileCount":4,"integrity":"sha512-CjkdQA3aW06lkvRLEPUbe0gRa/CzTDv9MByDWx9zDKPH/HPYytuaKbxdUplX7enC/Efv3wLy7wgVhsyG3ns8kQ==","signatures":[{"sig":"MEUCIQCEg0zkWq97GsrH3MBBx+Mm5d6+YSYj3OGbsvfHuL7CeAIgbZnPZUaMVFHWHvGdXzaSTYDZR0626rxhS0oJM8bUYdE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15926},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"d8de2e8b94151a92fd0c9259d906dfe6d66e11f5","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.0","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.4","@alt-javascript/boot":"3.0.4"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.4","@alt-javascript/config":"3.0.4","@alt-javascript/logger":"3.0.4"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.4_1774422716974_0.08510804528487581","host":"s3://npm-registry-packages-npm-production"}},"3.0.5":{"name":"@alt-javascript/boot-react","version":"3.0.5","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@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/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"3c95ccbbcfeed04fb494c363b3c9ff538fc9c4a8","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.5.tgz","fileCount":4,"integrity":"sha512-yYC2vtpnnxD1hyr1aSMh6aUmVOt5FzbsCEJiuXtt6/04nnMLJO+bEFmYLwSPtQOLpIMdwIoSQI7Gp/mbhnaE+Q==","signatures":[{"sig":"MEYCIQDb14Xt11KCy6sHj9srdGpZJVOi2swDredupdDSxL0hTAIhAJcGrvo0peh+wTwTcFTuFwNqdY7mfjSr1wsmlXHis+Ti","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15926},"main":"index.js","type":"module","engines":{"node":">=18"},"exports":{".":"./index.js"},"gitHead":"925db7483dcdfbfdb2571e74d3ae4bbfa494a126","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.0","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.5","@alt-javascript/boot":"3.0.5"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.5","@alt-javascript/config":"3.0.5","@alt-javascript/logger":"3.0.5"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.5_1774428775950_0.22358310345433607","host":"s3://npm-registry-packages-npm-production"}},"3.0.6":{"name":"@alt-javascript/boot-react","version":"3.0.6","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"author":{"name":"Craig Parravicini"},"license":"MIT","_id":"@alt-javascript/boot-react@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/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"dist":{"shasum":"ba00d1c5771a9f94e79dde840ecb26ce8af3e0d3","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.6.tgz","fileCount":4,"integrity":"sha512-37SlBsyNjBNM8TsHNKBFpAQ39LhHbLRIT+P0UJ0pDuxqrAQkmPx35aU2ic8pBjFOgO4ZPCmjfB/Xsj40xBkDIw==","signatures":[{"sig":"MEUCIBC2Y3GVheQLrPYu4ASrOX3PVHgWua8tuIox6S3IDKm6AiEA6mL+hdWrOyN/eV+8voS4kYP+up41FshocTEHCG4xVyE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15926},"main":"index.js","type":"module","engines":{"node":">=20"},"exports":{".":"./index.js"},"gitHead":"ba43e8807bc28583f98edddce84849875544bd51","scripts":{"test":"mocha --recursive test/**/*.spec.js"},"_npmUser":{"name":"craigparra","email":"craigparra@gmail.com"},"repository":{"url":"git+https://github.com/alt-javascript/boot.git","type":"git","directory":"packages/boot-react"},"_npmVersion":"11.12.1","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@alt-javascript/cdi":"3.0.6","@alt-javascript/boot":"3.0.6"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.7","mocha":"^11.7.5","@alt-javascript/boot":"3.0.6","@alt-javascript/config":"3.0.6","@alt-javascript/logger":"3.0.6"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boot-react_3.0.6_1774553437076_0.8965720204856555","host":"s3://npm-registry-packages-npm-production"}},"3.0.7":{"name":"@alt-javascript/boot-react","version":"3.0.7","description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","type":"module","main":"index.js","exports":{".":"./index.js"},"author":{"name":"Craig Parravicini"},"contributors":[{"name":"Claude","url":"Anthropic"}],"keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"scripts":{"test":"mocha --recursive test/**/*.spec.js"},"dependencies":{"@alt-javascript/boot":"3.0.7","@alt-javascript/cdi":"3.0.7"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"devDependencies":{"@alt-javascript/boot":"3.0.7","@alt-javascript/config":"3.0.7","@alt-javascript/logger":"3.0.7","chai":"^4.3.7","mocha":"^11.7.5"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/alt-javascript/boot.git","directory":"packages/boot-react"},"homepage":"https://github.com/alt-javascript/boot/tree/main/packages/boot-react#readme","bugs":{"url":"https://github.com/alt-javascript/boot/issues"},"engines":{"node":">=20"},"gitHead":"01bd2e99058af03b3213c09c07ba87985bfeeeca","_id":"@alt-javascript/boot-react@3.0.7","_nodeVersion":"24.14.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-Y0oDRu8IKa73/pkkQ1810e6si+WEbU9QBWDHGRvKkX6rqjK864/X8xBIuHVVO0jvtWPcZZuWO1DeBUWG79Pwkg==","shasum":"b791a0dca98309a13b37ab15108809a27bfd3d77","tarball":"https://registry.npmjs.org/@alt-javascript/boot-react/-/boot-react-3.0.7.tgz","fileCount":4,"unpackedSize":15926,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIC23ztRnn7XAG4aKp1WcN9yLKHeHFMdyURBpmIA9e+xiAiBC+oXf00iRlmUzYAB7/dPs3Y9m3p2QnVT4IK4pJrBzbg=="}]},"_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/boot-react_3.0.7_1774553621830_0.01673487950362129"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-21T03:12:12.596Z","modified":"2026-03-26T19:33:42.111Z","3.0.0":"2026-03-21T03:12:12.862Z","3.0.1":"2026-03-21T04:31:18.867Z","3.0.2":"2026-03-21T04:36:18.093Z","3.0.3":"2026-03-21T04:51:06.762Z","3.0.4":"2026-03-25T07:11:57.115Z","3.0.5":"2026-03-25T08:52:56.119Z","3.0.6":"2026-03-26T19:30:37.230Z","3.0.7":"2026-03-26T19:33:41.963Z"},"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/boot-react#readme","keywords":["alt-javascript","react","boot","cdi","dependency-injection","hooks","context"],"repository":{"type":"git","url":"git+https://github.com/alt-javascript/boot.git","directory":"packages/boot-react"},"description":"React integration for @alt-javascript boot — CDI services via React Context and hooks","contributors":[{"name":"Claude","url":"Anthropic"}],"maintainers":[{"name":"craigparra","email":"craigparra@gmail.com"}],"readme":"# @alt-javascript/boot-react\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%2Fboot-react)](https://www.npmjs.com/package/@alt-javascript/boot-react)\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\nReact integration for the `@alt-javascript` framework. CDI services accessible via React Context and hooks.\n\n**Part of the [@alt-javascript](https://github.com/alt-javascript/boot) monorepo.**\n\n## Install\n\n```bash\nnpm install @alt-javascript/boot-react\n```\n\n## Usage\n\n### Boot CDI and create hooks\n\n```javascript\n// boot.js\nimport { bootCdi } from '@alt-javascript/boot-react';\n\nexport const { CdiProvider, useCdi, useBean } = await bootCdi({\n  contexts: [context],\n  config,\n  React,\n});\n```\n\n### Wrap your app\n\n```jsx\nimport { CdiProvider } from './boot';\n\nfunction App() {\n  return (\n    <CdiProvider>\n      <TodoList />\n    </CdiProvider>\n  );\n}\n```\n\n### Use CDI beans in components\n\n```jsx\nimport { useBean } from './boot';\n\nfunction TodoList() {\n  const todoService = useBean('todoService');\n  const [todos, setTodos] = useState(todoService.list());\n  // ...\n}\n```\n\n### Headless mode (testing / SSR)\n\n```javascript\nimport { bootCdiHeadless } from '@alt-javascript/boot-react';\n\nconst ctx = await bootCdiHeadless({ contexts, config });\nconst svc = ctx.get('todoService');\n```\n\nThis package does not depend on React at runtime — it creates React-bound utilities when React is available, and falls back to headless mode when it's not.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}