{"_id":"@builtbyted/homeframe","_rev":"19-e7eb1628cce45c81d8f2a3c8c4a51951","name":"@builtbyted/homeframe","dist-tags":{"latest":"0.1.18"},"versions":{"0.1.0":{"name":"@builtbyted/homeframe","version":"0.1.0","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.0","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"04401f29d788e18ea26fbdeea820ad503ede10ba","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.0.tgz","fileCount":28,"integrity":"sha512-J+FwBI85SzmEmSdCoO6J9sIDCP5f6mq10Ag0JzVrGrD1/88RpAjd3DTGDlMFkrUb+QqqnyPEBsGFmGHPEfJi8w==","signatures":[{"sig":"MEUCIDFmmInwqLPa1XOEKAjmH30LHGjSXk0lp1QGEqUH54YTAiEA3UyDyGC6faWvX3bG5EfrGHpP7aMIHnC0gbDX3KHhS/0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":843121},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"gitHead":"9e0dfd97a4070b2a710d589882ae3aeb349e6005","scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.0_1787609180117_0.46708584860293545","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@builtbyted/homeframe","version":"0.1.1","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.1","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"abda94afc43f290826fbbae676a74f052901695b","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.1.tgz","fileCount":28,"integrity":"sha512-GCkSFHet8uv1K7BK32rcdFGrlbwTsJ2vOsBG/1BHY/dUf5sLEmtt6ZCxUu6jfQgfqUWjyE6KiB558Y5U3uWq1w==","signatures":[{"sig":"MEQCIB2xfthni6ZhS/qm2l015mu6Uwb+ffSJb5C1kJCOdAxVAiAMufLwvgo96SodUzOENA05NczYMMeqTpoDhb87bEieKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846259},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.1_1787616308295_0.9484859115779336","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@builtbyted/homeframe","version":"0.1.2","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.2","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"58f141241b13958e2d01654fdc175077597c976c","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.2.tgz","fileCount":28,"integrity":"sha512-u6F+GltUvFTDHbG+WyrnhAxUMp/sHAUs71EhATqhYV5cbQuizDaePWDhP16SP1TyZO7yPZH4HwJIInDHQRR7XA==","signatures":[{"sig":"MEUCIAF7KKBAH+1TtrM+1UuUEDp2adBOK/7DB86Kd97Sdh0TAiEAld/tqrWuls1t9VsNPiNkRDjUfjLp7SbMRuyy8G+mVrk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846161},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.2_1787622560711_0.3485868959668337","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@builtbyted/homeframe","version":"0.1.3","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.3","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"932d928fe078885cf23a9ab5a2bdd9ac5e7693c7","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.3.tgz","fileCount":28,"integrity":"sha512-7dPEFNMkYwzh0eziPWtEp6JgLXzqz+RX+iHGa5hHKfCopT+d53auGaqRzvHMBS8YX3Ed7EGhZ3yLFqqM+pEIkQ==","signatures":[{"sig":"MEUCIQC7NOgK+zhNxmy8IWxvMGwYlShXkIQiMYyflFyE5fhalQIgWEJafnmDYcWbE60Fii31wP5BHhyDe5Z/Mjgg+LSuRzE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":847635},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.3_1787625871540_0.7096989242530836","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@builtbyted/homeframe","version":"0.1.4","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.4","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"2a2798474ed31b2d88643b039d4461d8230e4b41","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.4.tgz","fileCount":28,"integrity":"sha512-syhn3/7L4EcFzMPEvpou7YMDuesc/szrM8i9GDPWnoT1n9B61lMJOFfwriDWlu++qdXRq9tSluoAGuLFOe1fUQ==","signatures":[{"sig":"MEQCIE8AtAIblO4JZlWCzdgxySTLOXGOL1zJkfhMy1h2pRFtAiAVo9iP7N+X7yqLjcELNluKxtqDdpxMAH07dh6P3KSGdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":862667},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.4_1787657101887_0.9941431508930723","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@builtbyted/homeframe","version":"0.1.5","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.5","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"f11e0ddf5ee7436370d618e5aa9b1eebb0a99679","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.5.tgz","fileCount":28,"integrity":"sha512-w4mz28OBvLK/5ZfAQAuyPyN/468W5vZgQqdWc63FR6cp4Y4oAHM3aRmfeoLAI5LKiQrz2Fk8iBiuAtlC9HFe7w==","signatures":[{"sig":"MEYCIQChEmAosNcJC9+qHtpnyJ1Jxvrzh7kiGt57xKD/4vE0kwIhAMwCTHvBDo1IKghruVRnlYblPxhHZ0VIwSZhBGzvV/cd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":863373},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.5_1787658465877_0.4233874993184108","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@builtbyted/homeframe","version":"0.1.6","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.6","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"e9cef958201bbf9be3af7feec547eb1f4e38930f","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.6.tgz","fileCount":28,"integrity":"sha512-pCw3x/X6jgW9T7c1WrIyYhCQ4DNyUM34x1L0BQpdqCXq7XoMo157V6E32iYEjaaMiWn4quXnRS3PVbw4ATrpgg==","signatures":[{"sig":"MEYCIQCkmFaZyVxqqmb2OJWUHx5lsdDq2Xam/BBjk4cVklrSLgIhAKpobTUyo08Fg9su1C0HNTDQoEs+/fdUoziGTZsdp2jM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":864724},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"gitHead":"2bd9f450747522d6bb9c706b68c66d8dde158629","scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.6_1787665634252_0.6865567738558018","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@builtbyted/homeframe","version":"0.1.7","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.7","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"0ca75102e931774b707a97bb2678d1cecf119cbb","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.7.tgz","fileCount":28,"integrity":"sha512-OAlRzRdrhWblQBmNncsE4U3+VxIWiDD6KwPs9dLvNU2MuBV3QQtrApi8ls7vVXV7LArz9SmLI99eD9h4ziiABA==","signatures":[{"sig":"MEUCIQDkwCrf7E0MakSzx9vOJmpYMzFOysW7zcv+P6vJsIpGIQIgNcG0fyKbymxpk8Ig2V4Rsr3bWLx8kK5eE4V9DmfzzWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":880203},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"gitHead":"7371e38634f8d90eec17eb4259ddca86e306c22c","scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.7_1787675843641_0.3399387600211323","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@builtbyted/homeframe","version":"0.1.8","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.8","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"d86da19ac7c7b8c7a070fbef0ddfa89351e741a8","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.8.tgz","fileCount":28,"integrity":"sha512-timScWbnZrz86dY0b0Pl/nlGlQvVVA8VmqqJxSZCxrpXpWxVeedk4JNIYo3A/rq8iND9o35pXNRXtmZpSwovAg==","signatures":[{"sig":"MEQCIArFnmUubwBWb6E2zTsfFKpaWBUPS9YGAMOk+rACWZNGAiAhW6RODBrOWhZ1SXGeC16AzOE66wcu6hAJYAxSQmnwPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":926176},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"24.12.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.8_1787773329370_0.23306164394963602","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@builtbyted/homeframe","version":"0.1.9","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.9","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"e3519d60f7a9a2420cc5ba64911c61adebf53e08","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.9.tgz","fileCount":28,"integrity":"sha512-IG3JckiS2CfSvEJ32gPGwSdktKgIHeYjV8777Vs8RKF+P+8csT3xTuQy0IbesbYEfYnTZtbJ5Jz49S78iClC4w==","signatures":[{"sig":"MEYCIQDHviuSLvNikrE250Jbt2zEdhFAkcYxyYLxO4Qaa1pRbAIhAOhj9sSGa9KfcWC0+9z98V67/yj0ZmtqrxDciBBPGsb2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":926716},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"24.12.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.9_1787775578289_0.022953772775636372","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@builtbyted/homeframe","version":"0.1.10","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.10","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"67ac6f4435013739fd13021b2249404d2189b6d5","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.10.tgz","fileCount":28,"integrity":"sha512-58003NftbnACXewGPJfjiBQsyN/+nbifu0z3Vl7FifXTxxnF2xN61rPXL5kY1ruTt5TsflWO44G7xKZUmmpPTg==","signatures":[{"sig":"MEUCIEeKJQV9bGNd1xnHsQrPdOrzxecaFcpfH2poteDKpXsQAiEAukwvvKT1FCTxAJH9APVbVVhUNr8LMbQDFB3tvfIlnh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":928352},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"24.12.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.10_1787779199568_0.7063751589276648","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@builtbyted/homeframe","version":"0.1.11","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.11","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"1b4a40b8e78553ef2ddadfd62f5e011963a15b87","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.11.tgz","fileCount":28,"integrity":"sha512-/Z/KYy6D9cXi7SMTwZBbpLhNti33P5JaxvNqtPf6Tj27FsW1o2F2rxau+6gnBtgmN+MSOBgpBkl0y582IIugIg==","signatures":[{"sig":"MEUCIQD9qjoICCPBQdVmD/9noU54bTsPT4g8G+2SEcjnzSAmoQIgMMnhfLPlHb6o5X5mqTMG/y3kC6PFE1XoLq8kvCvph7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":928558},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"24.12.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.11_1787787188927_0.18285787533420317","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@builtbyted/homeframe","version":"0.1.12","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.12","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"83e270bc3c47357f308884b8f26008b2d3531f85","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.12.tgz","fileCount":28,"integrity":"sha512-W/DnKRHI5ed7ksar0oDYS7N3zyTlR15iDqRV9y5qtbL+Lg4s/AwuFSfxZU6XpJ0wpRMSjOVdJzz49X6aBVb4+g==","signatures":[{"sig":"MEUCIQCE+lhw2P+suHh6PosUwHhiOvQ6u9P7Azo8nlrvF3/1tQIgOFjlaxDtVVEAZ6qyo7q9AD3TBVlbF2/Uxfs4KVMXts8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":932377},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"26.7.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.12_1787788711628_0.7070194972692274","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@builtbyted/homeframe","version":"0.1.13","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.13","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"a3674cea3fa404cecf784217ec3471d9b626b257","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.13.tgz","fileCount":28,"integrity":"sha512-OH0/rdTU/1cHmD2v1sX86CuVCxbO+/kRIY9ywNT+edp6xgyTTfs/NkB733o8SqbypSUyLxjKAQTK9OyqNkliJA==","signatures":[{"sig":"MEUCIAoJWdt7ekGxwxTdV9az3yDlwVgYsWWAOsyu0o6HhHyRAiEAs91zH8GjLX2hRBkwUBb1OJeTFAnenJA0tt9UZE3n7Jc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":933332},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"26.7.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.13_1787838530677_0.6428658495981894","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@builtbyted/homeframe","version":"0.1.14","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.14","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"f9781b1977ccd781d39b21d58c4cfdb933da4a4a","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.14.tgz","fileCount":28,"integrity":"sha512-RPED+Lo49RzK8oR9AzcIenxwntDyTc9DLX0l4e7HSl3fvv/kCQEPeRzvh/sYtfJCgc2pYAhYT/HH/iTXViNmmw==","signatures":[{"sig":"MEUCIGs6w3wxFOVefeVvsFSJBtQVL6dRXsFPveEHlbR7m3rDAiEAwAEg/+cDExKWK2kUVgdxVGebzQqsxvf0s2JfbPrT7bA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":933596},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.19.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"24.12.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.14_1787840290360_0.38333331630736933","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@builtbyted/homeframe","version":"0.1.15","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.15","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"a3c1f64d99d8bd9c990fe19f7f64286690fdb10e","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.15.tgz","fileCount":28,"integrity":"sha512-vj+/0gge+5fk3E6iPcDeYGaPAm/++uAloc1+AbVswFudlt37sEcd14MFFh9X6UAdADZv/0ALoKgS5Hzk+bCeGQ==","signatures":[{"sig":"MEQCICSu6ZiwABTooBts2r5tmTSVDtmPyK85X7PASvbwU1aYAiBJeOQ28sDilZ0pg5z/Rd+OSdLxvS8fGO2qaTs+mfjQgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":966313},"main":"./dist/index.js","type":"module","_from":"file:/tmp/homeframe-release-0.1.15/builtbyted-homeframe-0.1.15.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"_resolved":"/tmp/homeframe-release-0.1.15/builtbyted-homeframe-0.1.15.tgz","_integrity":"sha512-vj+/0gge+5fk3E6iPcDeYGaPAm/++uAloc1+AbVswFudlt37sEcd14MFFh9X6UAdADZv/0ALoKgS5Hzk+bCeGQ==","repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.16.0","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"24.19.0","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.15_1788555142571_0.8364275237214394","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@builtbyted/homeframe","version":"0.1.16","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.16","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"65c72a246ae4cefce48ac54bcb4618981277029c","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.16.tgz","fileCount":28,"integrity":"sha512-WnqnqFgsC06/TpwAy516U2MAMJMxpasQzlGB4malzO9XmWkrw5lm+XIkWPoQhoKqdzdhsHqPH9cLUGRUGkVp8Q==","signatures":[{"sig":"MEYCIQD6KTPe17SycLOzSdkDlZGj5qNmghAuADCM3nWXzPjP0AIhAOJDJdjdxbDBNe6PrFhIilxtdVSwty/vMiXZoTkxbLKH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFuLggpJS3044LmZLbK7S+E4ksQwvWZGEEBqIhlvmynZAiAqKooOLUs4J3v5SPsrd685weut22OG/Cdu19Z8qXUOEA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1004668},"main":"./dist/index.js","type":"module","_from":"file:/tmp/homeframe-release-0.1.16.ZcL12F/builtbyted-homeframe-0.1.16.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"_resolved":"/tmp/homeframe-release-0.1.16.ZcL12F/builtbyted-homeframe-0.1.16.tgz","_integrity":"sha512-WnqnqFgsC06/TpwAy516U2MAMJMxpasQzlGB4malzO9XmWkrw5lm+XIkWPoQhoKqdzdhsHqPH9cLUGRUGkVp8Q==","repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.16_1789656517698_0.7936315258087698","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@builtbyted/homeframe","version":"0.1.17","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"license":"MIT","_id":"@builtbyted/homeframe@0.1.17","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"homepage":"https://github.com/BuiltByTed/Homeframe#readme","bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"bin":{"homeframe":"dist/cli/index.js"},"dist":{"shasum":"de81868a0d670ea9dcd4ea5998641c3d534b6797","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.17.tgz","fileCount":28,"integrity":"sha512-3yzkt4ZTiNm9aWNw16PBGmqewpwT77mxOw/z9m31GGUjrtC0RRg/UUc+wNe0G6tUfwbJBburEcR0eTPEAEPBAQ==","signatures":[{"sig":"MEQCIAsXoMeicWe+oTBsYZghoN3rqvRqACKJgkDLZ8/9mJ6zAiB/niD2W8B/CnYWb2RC/9S+XIHYGRGc37tM0t5UBVnFgA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHACPM8poooepqwoNOYPdK/m3oWETcoNwkPyRkYooEaNAiEAwDzPJU9U1ujM4JEFVozk+oaSIo5gPyaBL8WffAW6f18=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1014845},"main":"./dist/index.js","type":"module","_from":"file:/tmp/homeframe-release-0.1.17.LQ6pxJ/builtbyted-homeframe-0.1.17.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"_resolved":"/tmp/homeframe-release-0.1.17.LQ6pxJ/builtbyted-homeframe-0.1.17.tgz","_integrity":"sha512-3yzkt4ZTiNm9aWNw16PBGmqewpwT77mxOw/z9m31GGUjrtC0RRg/UUc+wNe0G6tUfwbJBburEcR0eTPEAEPBAQ==","repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/homeframe_0.1.17_1789674700873_0.35196517463999855","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"_id":"@builtbyted/homeframe@0.1.18","bin":{"homeframe":"dist/cli/index.js"},"bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"dist":{"shasum":"36406482e2312e746c9821135bbba2b70a0b0cfb","tarball":"https://registry.npmjs.org/@builtbyted/homeframe/-/homeframe-0.1.18.tgz","fileCount":28,"integrity":"sha512-t68yjTv+JtNe2FECBsL7wi5jCPivlZ++ZEFK1hRFxUGy9GLFC1fpjgZZuXLVasGKWapU/bgRD2KT/vtIUO2NBg==","signatures":[{"sig":"MEUCIQD6cERjeBdtegbDo1JzlNrb0iA2XIVbZDac/kK1sNl+BwIgfjKJmCNfp7qX/k9+xmEA3tAXGAk3pLYZG2BFl9rXwTE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCldyY3OEOtAmJoqlfcIvIiWwEb06RNtDAGLBv891wrhQIhAInfQijLBTOGgDZ0cXTtQRkidZEEIAthYH3gKEAB5rkm"}],"unpackedSize":1015399},"main":"./dist/index.js","name":"@builtbyted/homeframe","type":"module","_from":"file:/tmp/homeframe-release-0.1.18-hYUBqJ/builtbyted-homeframe-0.1.18.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sw":{"types":"./dist/sw/index.d.ts","import":"./dist/sw/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","import":"./dist/vite/index.js"},"./react":{"types":"./dist/react/index.d.ts","import":"./dist/react/index.js"},"./router":{"types":"./dist/router/index.d.ts","import":"./dist/router/index.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","import":"./dist/runtime/index.js"},"./styles.css":"./dist/react/styles.css","./package.json":"./package.json","./eslint-plugin":{"types":"./dist/eslint-plugin/index.d.ts","import":"./dist/eslint-plugin/index.js"},"./runtime/styles.css":"./dist/runtime/styles.css"},"license":"MIT","scripts":{"build":"tsx ../../scripts/build-homeframe-package.ts"},"version":"0.1.18","_npmUser":{"name":"tedcharles","email":"me@tedcharles.net"},"homepage":"https://github.com/BuiltByTed/Homeframe#readme","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"_resolved":"/tmp/homeframe-release-0.1.18-hYUBqJ/builtbyted-homeframe-0.1.18.tgz","_integrity":"sha512-t68yjTv+JtNe2FECBsL7wi5jCPivlZ++ZEFK1hRFxUGy9GLFC1fpjgZZuXLVasGKWapU/bgRD2KT/vtIUO2NBg==","repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"_npmVersion":"11.12.1","description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","directories":{},"maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"sideEffects":["./dist/**/*.css"],"_nodeVersion":"22.22.2","dependencies":{"sharp":"0.35.3","commander":"15.0.0","playwright":"1.62.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"vite":">=7 <9","react":">=18 <20","eslint":">=9 <11","react-dom":">=18 <20"},"peerDependenciesMeta":{"eslint":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/homeframe_0.1.18_1789690630616_0.3472237638075808"}}},"time":{"created":"2026-08-24T22:06:19.828Z","modified":"2026-09-18T00:17:10.902Z","0.1.0":"2026-08-24T22:06:20.279Z","0.1.1":"2026-08-25T00:05:08.500Z","0.1.2":"2026-08-25T01:49:20.862Z","0.1.3":"2026-08-25T02:44:31.677Z","0.1.4":"2026-08-25T11:25:02.033Z","0.1.5":"2026-08-25T11:47:46.158Z","0.1.6":"2026-08-25T13:47:14.403Z","0.1.7":"2026-08-25T16:37:23.804Z","0.1.8":"2026-08-26T19:42:09.525Z","0.1.9":"2026-08-26T20:19:38.444Z","0.1.10":"2026-08-26T21:19:59.717Z","0.1.11":"2026-08-26T23:33:09.212Z","0.1.12":"2026-08-26T23:58:31.822Z","0.1.13":"2026-08-27T13:48:50.834Z","0.1.14":"2026-08-27T14:18:10.512Z","0.1.15":"2026-09-04T20:52:22.770Z","0.1.16":"2026-09-17T14:48:37.804Z","0.1.17":"2026-09-17T19:51:41.010Z","0.1.18":"2026-09-18T00:17:10.727Z"},"bugs":{"url":"https://github.com/BuiltByTed/Homeframe/issues"},"license":"MIT","homepage":"https://github.com/BuiltByTed/Homeframe#readme","keywords":["homeframe","react","pwa","ios","service-worker","vite","router"],"repository":{"url":"git+https://github.com/BuiltByTed/Homeframe.git","type":"git","directory":"packages/homeframe"},"description":"A React framework for stable iOS Home Screen and desktop progressive web apps.","maintainers":[{"name":"tedcharles","email":"me@tedcharles.net"}],"readme":"# @builtbyted/homeframe\n\nHomeframe is a React framework for apps that live on the iOS Home Screen and as\ninstalled desktop PWAs. It owns the browser behavior that ordinary app code\nshould not have to rebuild: viewport and safe-area geometry, keyboard docking,\nthe app shell, startup presentation, routing/history, generated install assets,\nthe service worker, atomic updates, offline navigation, installation capability,\nnotifications, lifecycle restore, and diagnostics.\n\n## Create an app\n\n```bash\nnpx scaffold-homeframe-app my-app\ncd my-app\nnpm run dev\n```\n\nThe scaffold includes strict TypeScript, a working shell/router composition,\ngenerated PWA assets, `AGENTS.md`, and `docs/HOMEFRAME_RUNBOOK.md` so human and AI\ncoders know the framework's ownership boundaries.\n\nThe generated contract keeps one persistent shell/header with one active primary\nscroller around the route outlet, preserves an opaque iOS safe-area header\nsurface, forbids app-level viewport/splash workarounds, and requires native iPhone\nkeyboard open/close plus open-keyboard scrolling checks before release.\n\n## Install manually\n\nRoute loaders run again on fresh navigations. A prefetched result can serve one\nnavigation within 30 seconds; Back/Forward can reuse data for up to 60 seconds.\nThe router retains at most 100 data entries and six DOM previews. Older managed\nhistory entries remain navigable and use an app-canvas preview until rendered.\n\nAfter a mutation, call `await router.revalidate()` to refresh the current route\nwhile preserving its history entry and scroll. Call `router.invalidate()` before\nchanging accounts, then navigate to the next screen; `router.invalidate(url)`\nclears a specific URL. Invalidation cancels pending work and clears retained data\nand previews; it does not itself navigate or replace the currently rendered UI.\n`useHomeframeLogout()` also invalidates active Homeframe routers.\n\n```bash\nnpm install @builtbyted/homeframe react react-dom\nnpm install -D vite @vitejs/plugin-react typescript\n```\n\nUse the primary package for React shell and router APIs:\n\n```tsx\nimport {\n  AppScrollView,\n  AppShell,\n  AppViewport,\n  HomeframeProvider,\n  HomeframeRouterProvider,\n  RouterOutlet,\n  createHomeframeRouter,\n  useRouteScrollRestoration,\n} from '@builtbyted/homeframe';\nimport '@builtbyted/homeframe/styles.css';\n```\n\nConfigure generated PWA behavior through the Vite subpath:\n\n```ts\nimport { defineHomeframe } from '@builtbyted/homeframe/vite';\n\nexport default defineHomeframe({\n  app: {\n    id: '/',\n    name: 'My App',\n    shortName: 'My App',\n    startUrl: '/',\n    scope: '/',\n    display: 'standalone',\n    colorScheme: 'system',\n    themeColor: '#dbeafe',\n    themeColorDark: '#0f172a',\n    backgroundColor: '#dbeafe',\n    backgroundColorDark: '#0f172a',\n    icon: './brand/icon.svg',\n  },\n  splash: { appleStatusBarStyle: 'default' },\n  viewport: {\n    // Disable incidental selection everywhere, allow it only on desktop, or\n    // retain normal browser selection everywhere.\n    selection: 'allow-desktop',\n    snapshot: 'brand',\n    bottomDock: 'avoid',\n  },\n  router: { historyMode: 'auto' },\n  serviceWorker: {\n    update: { mode: 'automatic', reload: 'safe-point' },\n  },\n});\n```\n\n```ts\nimport react from '@vitejs/plugin-react';\nimport { defineConfig } from 'vite';\nimport { homeframe } from '@builtbyted/homeframe/vite';\nimport homeframeConfig from './homeframe.config.js';\n\nexport default defineConfig({\n  plugins: [homeframe(homeframeConfig), react()],\n});\n```\n\nKeep `index.html` intentionally small. Homeframe generates the viewport,\ntheme-color, install, Apple, startup, manifest, and service-worker metadata.\n\nDock placement and keyboard behavior compose independently. For a bottom search\nfield or composer that overlays content while following the software keyboard:\n\n```tsx\n<ViewportDock placement=\"overlay\" keyboard=\"avoid\">\n  <SearchComposer />\n</ViewportDock>\n```\n\nHomeframe owns its safe areas, measurement, hit testing, and keyboard\ntranslation; no app-level viewport positioning rule is required.\n\nFor a player or tool row attached below the header, or a search row stacked\nabove bottom navigation while content scrolls behind it, use the measured shell\nslots:\n\n```tsx\n<AppShell\n  header={<Header />}\n  headerAttachment={<VideoPlayer />}\n  bottom={<BottomNavigation />}\n  bottomAttachment={<SearchComposer />}\n  bottomAttachmentKeyboard=\"avoid\"\n>\n  <AppScrollView>{children}</AppScrollView>\n</AppShell>\n```\n\nIf the keyboard should cover persistent bottom navigation while only the\nattachment follows it, set `bottomKeyboard=\"manual\"` and keep\n`bottomAttachmentKeyboard=\"avoid\"`. Homeframe removes the covered dock row\nfrom the attachment anchor while the attachment owns keyboard focus.\n\n`ViewportAttachment` is also exported for direct composition. Homeframe owns\nits position and size but intentionally supplies no colors, fonts, borders, or\nshadows. `homeframe doctor --strict` reports app-authored fixed/sticky regions\nas `HF_UNTRACKED_VIEWPORT_UI`; the ESLint plugin catches inline versions while\nediting when enabled in the application's ESLint configuration.\n\n## Full-height side panels\n\nImport `SidePanel` from `@builtbyted/homeframe` and compose it through the shell:\n\n```tsx\n<AppShell header={<Header />} sidePanel={\n  <SidePanel open={panelOpen} onOpenChange={setPanelOpen} side=\"right\"\n    aria-label=\"Workspace tools\" header={<PanelTitle />} footer={<PanelActions />}>\n    <PanelContent />\n  </SidePanel>\n}>\n  <AppScrollView>{children}</AppScrollView>\n</AppShell>\n```\n\nThe default 400px panel narrows the whole app when at least 720px remains,\noverlays when it does not, and fills the UI below 768px. Configure `width`,\n`minAppWidth`, and `mobileBreakpoint`; use `side=\"left\"` for the other edge.\nKeep one panel mounted and toggle `open` to preserve content and scroll state.\nHomeframe owns safe areas, keyboard-visible header/footer slots, independent\nscrolling, modal focus, dismissal, and reduced motion. Content remains app-owned.\n\n## Launch defaults\n\nStarting in 0.1.17:\n\n| Launch environment | Branded splash |\n| --- | --- |\n| Desktop browser | Hidden |\n| Installed desktop app | Hidden |\n| Mobile browser | Hidden |\n| Installed mobile app, including tablets | Shown |\n\nHomeframe establishes this policy before first paint and applies it to both the\nHTML and React splash, including branded resume presentation. Explicit opt-ins\nare `splash.showInBrowserTabs: true` and `splash.showInDesktopApps: true`.\n`splash.enabled: false` disables branded presentation and generated Apple startup\nimages. Explicit privacy snapshots remain available in every environment.\n\nThe generated Apple image and HTML splash use the same `splash.logo` artwork.\nHomeframe accounts for the opaque iOS status-bar origin when positioning the\nHTML logo, independently of shell measurements and keyboard changes.\n\nInstall icons default to `purpose: any`, preserving the supplied artwork without\nopting into platform masking. Set `app.maskableIcon` only to request adaptive\nicon treatment. Browser and operating-system icon decoration remains platform\ncontrolled; there is no universal border-disable manifest flag.\n\n## iOS status-bar compliance\n\nStarting in 0.1.16, `splash.appleStatusBarStyle` defaults to `default` for both\ninstallation metadata and bootstrap. Set it explicitly when upgrading an app.\nDoctor requires exactly one generated `content=\"default\"` status-bar declaration\nand a matching bootstrap with translucent-mode geometry disabled. Non-default,\nmissing, duplicate or unverifiable output fails even without `--strict`.\nBuild before running doctor, or provide the deployed `--url`.\n\nKeep the shell/header opaque. Affected older Home Screen installations may need\nremoval and re-addition from Safari after protecting local-only data and sign-in\nstate; code updates alone may retain old native metadata. Preserve manifest\nidentity, scope and worker URL. See the\n[migration guide](https://github.com/BuiltByTed/Homeframe/blob/main/docs/ios-status-bar-migration.md).\n\n## Package entry points\n\n- `@builtbyted/homeframe` — React shell and router APIs.\n- `@builtbyted/homeframe/styles.css` — required framework styles.\n- `@builtbyted/homeframe/react` — React APIs without router re-exports.\n- `@builtbyted/homeframe/router` — router APIs.\n- `@builtbyted/homeframe/vite` — typed configuration and Vite plugin.\n- `@builtbyted/homeframe/runtime` — advanced non-React runtime APIs.\n- `@builtbyted/homeframe/sw` — advanced worker/client APIs.\n- `@builtbyted/homeframe/eslint-plugin` — framework boundary lint rules.\n- `homeframe` — bundled CLI binary with `init`, `migrate`, `upgrade`, and `doctor`.\n\n## Framework boundaries\n\n- The document never scrolls; content scrolls in `AppScrollView`.\n- Use one `HomeframeProvider`, one router provider, and one top-level\n  `AppViewport`.\n- Put persistent chrome in `AppShell`; put bottom controls in its keyboard-aware\n  bottom slot or a Homeframe dock.\n- Do not register another service worker or hand-author generated PWA metadata.\n- Do not use raw viewport measurements or device-specific safe-area constants.\n- Use Homeframe editable controls and keep editable text at least 16 CSS px.\n- Preserve app identity and worker scope after users install the app.\n\nRun the release-oriented checks with:\n\n```bash\nnpm run build\nnpx homeframe doctor --root . --dist dist --strict\n```\n\n## Documentation\n\n- [Repository and full guide](https://github.com/BuiltByTed/Homeframe)\n- [Live kitchen-sink PWA](https://builtbyted.github.io/Homeframe/)\n- [Normative specification](https://github.com/BuiltByTed/Homeframe/blob/main/SPEC.md)\n- [Adoption runbook](https://github.com/BuiltByTed/Homeframe/blob/main/docs/adoption-runbook.md)\n- [Compatibility policy](https://github.com/BuiltByTed/Homeframe/blob/main/docs/compatibility-policy.md)\n- [Security review](https://github.com/BuiltByTed/Homeframe/blob/main/docs/security-review.md)\n\nMIT © BuiltByTed\n","readmeFilename":"README.md"}