{"_id":"@homedev/framework","_rev":"33-4a02c1e6e6e4f1e2b31fc88403bc9c4a","name":"@homedev/framework","dist-tags":{"latest":"1.0.20"},"versions":{"0.0.1":{"name":"@homedev/framework","version":"0.0.1","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.1","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"fd1eb60c0d66d038041123332b6055220f647a60","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.1.tgz","fileCount":3,"integrity":"sha512-iQet3aVqGzLgW2n9BT0XRRUvZiKu004Vkv1qaMEQ3m+O3oKT28uyCLxa63D1QBAC4NdjtUlDdFoa7H9oHaZLVA==","signatures":[{"sig":"MEQCIEUia9nOCT13rzRmXJYQotDP6Gagcp3rGRU7QgiiT47DAiBa3HUthqSq0Xs9VG4Q1cb8yxT2VcMbUXg0aLiqYKUraA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5769},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.1_1772908938747_0.4999564584621592","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@homedev/framework","version":"0.0.2","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.2","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"83ff1a7bc218aeca4436419039eaf00395fde15c","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.2.tgz","fileCount":2,"integrity":"sha512-kLICOQ1qV/1mwEkg2u7Msb5UYdmGUDu9lQ6NAy78HmA4rT36JLutw1Hm8Ebng539dBRNyaokEF9M0ykXtvsjow==","signatures":[{"sig":"MEUCIQC32nQzGUpmr92BHSoFs1vvzDzc8gPKrx1a7ePJS+9I7QIgAN88gANp+fcUWFPMmBWKdVUPosigdrsKS2K8i6L3a3I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8064},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.2_1772967719001_0.3292505999558617","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@homedev/framework","version":"0.0.3","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.3","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"baef2f5819e49d60dffde007544505ba1278636b","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.3.tgz","fileCount":3,"integrity":"sha512-vJ05WVA4Y71xbVrEevJXrRdP5FeG8sBOJWwqyCoJyad7cl1SOkxsYt4LaA9cUTp7DPHRUbqHK3kYWZ1EMLTocA==","signatures":[{"sig":"MEYCIQDXvseYVog3SiF2HGibxqHjlJ4SdPDvb1KFfer+v2kJSgIhALl3T+DRvHijNJA+KmUPH8BUlOv9vUoElx5a5MV97RBd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18478},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.3_1772969382961_0.7113485554584511","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@homedev/framework","version":"0.0.4","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.4","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"2f5dfda7c4d5e2cd73a7993f54fe500a90f3ccff","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.4.tgz","fileCount":3,"integrity":"sha512-n8hbli9cGlusLtBjNW8VfXNxo2VH9sOct98qaPQtKxU+9uH1HDNcaSCNhglwtLlbemUhI66cEKUASkzxJWcenA==","signatures":[{"sig":"MEUCIFo88orNwQiYkio0M3pfZ716tDGi/dFNkcApjHqAp9cCAiEAvdGlMr/sEl899dWbNC1mG6AvuXydtlhc83VhAdJ9CDw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15406},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.4_1772972146076_0.45005177581437406","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@homedev/framework","version":"0.0.5","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.5","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"d9a65f72973ba408441d1e1d490a865101a9d22f","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.5.tgz","fileCount":3,"integrity":"sha512-2eIyRzYc7t2pEjptSwooQamRcyd7Wi0WBsLKRUX7ic2D3+lkSIohjWh5jDxocZ+REQ1Q8F83oiSanTzNi0t0/A==","signatures":[{"sig":"MEQCIGAfe8WHCHRwwcTcoOvEZO/IkRno1tI4yLcRnv7/5cnzAiBWwYNIfMEtz7LIHARBLaUiDNas3FNeUmfDDFE7B5+tBQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16725},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.5_1772972721391_0.8903991898584414","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@homedev/framework","version":"0.0.6","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.6","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"f1e954dd3e93598c7391c09efb96f79f57fcbf21","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.6.tgz","fileCount":3,"integrity":"sha512-7LyBdc7RYuAeh6CGVdmC+n05FD9lfvcnfYbHOXc36wSzmoDFdLbnl/n+f6JZeHtCXPm9+ERYBOJO0KY8p2OddA==","signatures":[{"sig":"MEQCIF/sFL59oPQnukLdAy9CtfQzK+adef//qOknYSQC4Z5HAiBTa0+pDmg6s6IteuZOyaz+PDA/bLgn5sfiYDNB8/uVXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20078},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.6_1772978213279_0.7643487434978322","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@homedev/framework","version":"0.0.7","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.7","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"52aa5205f5cb31c744ec49d70c6e01f0539048ad","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.7.tgz","fileCount":3,"integrity":"sha512-83tZoVfM13q4R3zVHvPTiT5v8l3Cmc19+IddX291hHAbx/3Y/6E6SYxU+4RZVVaZRS6mdtV6CKjr59Ha9rMoqQ==","signatures":[{"sig":"MEUCIQCF0jtsqSqpsseFk9878NSXiXwacoSRiCyyk/nb5GIS4wIgDBf0fymmyjANgM8pz8QkRkyQbdmyd0YwWs90tDI5lYc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20107},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.7_1773053591341_0.601468097650572","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@homedev/framework","version":"0.0.8","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.8","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"1c2bb19f7d58ec2770ef0314ce45d8c747fa01db","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.8.tgz","fileCount":3,"integrity":"sha512-ofN4eWoJWq8yiWimWzKCVv2DdpDxolnR7QO7vWvEqREGHkgGQKvqQ7c2r/7bc0IfGbZHSnBYeq/pNyghyqoNEw==","signatures":[{"sig":"MEQCIF0zwxl8DXle/wWiF0V6dVC+SH0+4K87+OxvZFLS8DXfAiAyclmJsI6u7s+bvmg3WRb114ojVpckNBJDfpm0r1vqsg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20706},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.8_1773160256467_0.5396627235873424","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@homedev/framework","version":"0.0.9","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.9","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"75611a96905def302dd06ac6ad2081fdd8eaccf8","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.9.tgz","fileCount":3,"integrity":"sha512-TxMfDR+1Ne+14dnRWBEOJn4h0kb1Vyq6T91TgBVP/C56gwEJ+RMSb7cdtr/B5BgAaGMAuOMVY4e6E2iPmBBzbA==","signatures":[{"sig":"MEUCIQDqJO5x0zJC9mjEpboqJQeV0JlM85Im3YUwdh8YMvc3JgIgTn3CrAczIUkHJafCJTqRy/yhcPEZGzsqHB1EfEKuviA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22017},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.9_1773160933835_0.9214489408222954","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"@homedev/framework","version":"0.0.10","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.10","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"7b51b9ddd021c028b716bd3d265bc6223f764a19","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.10.tgz","fileCount":3,"integrity":"sha512-Dh7g6YxqF90KiSJoSLDZRe6u6p21DhNl7B9ijx5eIGf3YYWZAXGpVYjFOTMXvdgGfswN2hK7pkaVaSTeSY2hRw==","signatures":[{"sig":"MEQCIHh7urCRlASFkGN5whQ66JRBL16qg7fn2hsoyrI1q8YlAiBOgxjNCx+JNZtr2TJciEJmqT3ztMiuhwXXXsngIui6Vg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21836},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.10_1773161533824_0.15836212301363584","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"@homedev/framework","version":"0.0.11","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.11","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"6d3c2279f416c8f4fc5ae1449e15abe39363cb4b","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.11.tgz","fileCount":3,"integrity":"sha512-0NEM4ppSwcKDf0fuo9JTDAY+ZloRHnvqHuAXWLyODvlD3u5pvKJFCJTpbLwodWLkTjYeUot72+8vhpo7n413Yw==","signatures":[{"sig":"MEYCIQDS2S5bmz2qwONZy75gm3EgfB8PaYMbUu/MMqVIvl/kDQIhAOfdwm6wR5raFNfrR+SZCg2PVXELC3ynmxZKQoWfVRkQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21880},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.11_1773165390477_0.9474883852282086","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"@homedev/framework","version":"0.0.12","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.12","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"66e377fa310ff99af735ff8e13f9281c4e71fb9e","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.12.tgz","fileCount":3,"integrity":"sha512-5+i/JyObOjeSI66Nv71WWCQ/vlHHDMDvz/G+ZCkwOLNEtEkXP4Ya8Gx+XWEkdDtZfQ/wMeah5F9GH0aeAeJPqw==","signatures":[{"sig":"MEQCIGhorLJevD5FuBALcxoibrgJow3EbKpj0+x55NNNHaYrAiASOnInowSt606Vt+S3THjrVFSmo+M8z1zy35VMRd7+Eg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21972},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.4","description":"homedev framework","directories":{},"_nodeVersion":"22.22.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.12_1773339768746_0.5659862273053753","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"@homedev/framework","version":"0.0.13","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@0.0.13","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"50b177b5f49eef6e7d1c3b5b6c357fcfc8b20567","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-0.0.13.tgz","fileCount":3,"integrity":"sha512-+aJk8a0FqtdMlDNBomBEgPHjPegvIH9knrOFo8ASdWqYPyuPXCAjmLgW6DSOEMakVDwujETcWTJZUn3lfEdIlA==","signatures":[{"sig":"MEUCIQDSIzgb8D3K+5p9bhZqgd0RklWm/Rr8AQCHFCt/DxrfCAIgcOx2vO6Id5DrmVBXH6qiohHPrOV3YCOxNUIfkLWCxKI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34651},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.7","description":"homedev framework","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_0.0.13_1775643210811_0.43427755150782277","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@homedev/framework","version":"1.0.0","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.0","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"c5d1ff5bbb3cabbd1e8cdf92e4c4073d074e179d","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.0.tgz","fileCount":3,"integrity":"sha512-IxKlkPJnQxSm8OYEihHPQi0Ru3sZAmBD6QQeXu3BL24kOYU8oQOwYi9Ulh2BbCs7gGR8/G32+qJdBN1EZVTaRg==","signatures":[{"sig":"MEQCIC/lv/bSfXKCZBrSFfZ06Ez2q079ctLb39RDEIP3YbD7AiB11td75y/FxeC6CXw0Njxm0TZgFgrL/Ilkys2Da5Mq5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34650},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.7","description":"homedev framework","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.0_1775643561981_0.48325123040207774","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@homedev/framework","version":"1.0.1","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.1","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"2784efd52449b70f7f3a7a44b140c62599bfeff6","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.1.tgz","fileCount":3,"integrity":"sha512-ki6/65r6w2gXEZgeB06ulGXmiXLUW0257kDf7LHBKtmBO45oCLSA2OWtiqS1NFBWzuFROgV8YWLclUsgWSfYqA==","signatures":[{"sig":"MEQCIH6Q7o2pmMizX7FK1fPT4dE/lXa5+6cxuAd2XhHw2rNVAiB/ibBmt52dLf/KkvVl/a3Gzj5bH9BkN7lfuL/iOHweIA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38122},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.7","description":"homedev framework","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.1_1775645508915_0.4295183654309962","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@homedev/framework","version":"1.0.2","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.2","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"7832720442b035fadeeee866cab5adcb35a1577f","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.2.tgz","fileCount":4,"integrity":"sha512-2/slKLJNsdPLWLc67DHOjkaUuVF9dpwXaQyS5GCkNeYmjR9a0dNX5zFLnw+XtlLUub38H666O+GDQRFTW4EtXg==","signatures":[{"sig":"MEUCIQDc7gsQ88HDMVkP5kRGee6IA1H2UGwecjmKhJ3wWczwsAIgae4TC49JbRbEfpG5yOGWS+OZuEig9Hhzb6xs8asT1nY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51431},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.7","description":"homedev framework","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.2_1775814377670_0.03415669258251186","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@homedev/framework","version":"1.0.3","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.3","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"9176816864c9743de4cd8964fa55be9bb26adc71","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.3.tgz","fileCount":4,"integrity":"sha512-jLOlXqwCDKZkMxF7xig9UpWCoEsCQLpI8n/mElWO7FB1PRKVpuNdZkqxgOcE5k6v0LK58TdogzVz7x7SwS9dTA==","signatures":[{"sig":"MEQCICtrQ4eXBd4eEL75m6Fo20b6SFlb2RDySaAUaw4OFzqlAiAoWCRQ0eBdd2McAb4+b7dNL3gemzZDDa1OYzHBPVu8bQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51477},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.7","description":"homedev framework","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.3_1776761381504_0.6701915729947672","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@homedev/framework","version":"1.0.5","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.5","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"a8288bdce56e57cf98776a4161e1f51167946d61","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.5.tgz","fileCount":4,"integrity":"sha512-7uFo/ugYQ9JDuhaEdTNQAFh/uPYo9J30A7vh/Cj4jgQO/qMvf3yW5bJRujKdogJrWjfzbVVcH/z5RopSFib7wQ==","signatures":[{"sig":"MEUCIQC5luPhk1k8JaW+cRvab8fxW8b8YUefXxwWQBbFBqwWYwIgYL24IRdcu/UPcESbsOROWR1xizbzJEE+321jZdGChw8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53340},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.5_1783954088373_0.5308190830571218","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@homedev/framework","version":"1.0.6","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.6","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"d6f654c6af9f7c57f5c0f38a8d250aa072dcff31","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.6.tgz","fileCount":2,"integrity":"sha512-MIcJSUb6IQTVk2s6QLY3C/u429OlTB10i0rCtO65e3PS+vrDl8mZvwXeobT5tSuySvy+hzrMHOoIeQTudpJlTA==","signatures":[{"sig":"MEUCIQC0zQMmtZUr+EX1S0dtY3gX+z6pHBWXc8jlgPY3IMNUewIgUWJnvx22eSDEBs2jSqo8y4UM8Xhw+zgA2LoQSvxyc7I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21051},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.6_1784013127030_0.9628660647592799","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@homedev/framework","version":"1.0.7","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.7","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"f5088c71662797f56c73aa01c0b6c8032045b8ef","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.7.tgz","fileCount":4,"integrity":"sha512-rf042caHhngpfFStBR0o1hgIwtSEJqnnNqmhSA037igtDDiuIj6JVv9D/6BlAe/vGk/CVQapF0sBkF0pQoGnbA==","signatures":[{"sig":"MEYCIQC1PAuMQzo3AyinbQeprSyqay1dKxGDT+MzKN8yldZJEwIhAM4K/Q4YsjZr4mPmuHucSZ6AzSoSuowdf7Ktz4bn91YU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54731},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.7_1784013641513_0.38299118981360736","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@homedev/framework","version":"1.0.8","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.8","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"bc80dc041375cd18127a27328d0b7af67bd6249d","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.8.tgz","fileCount":4,"integrity":"sha512-zUQhQ6CFMtxH4dAynzol31vOoOOp/axU9piG3D2M9JLfeOQO4rxUtWZvUJ22bsi4qdzY9BQ86fGfhHyi5pT7sQ==","signatures":[{"sig":"MEYCIQDhRzmqoV37JMuGY78sQ/Xl/oF12gVayfbClqXnkqQgjgIhAPxgGU0k3SAH6OsH/ZuVOKxJzQOrabMC1UiZheML8b31","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56825},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.8_1784184681341_0.463383774679603","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@homedev/framework","version":"1.0.9","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.9","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"7b4da085884ab9c08f1f21878f3f5a16733beab7","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.9.tgz","fileCount":4,"integrity":"sha512-to5BmlBYuOYGxjJcmd7+saqz5TN25fovL0Cm5iSK3IoJ7YvG4xtTYyKNSLZrC80skZe9mKtVBm8p+GuAA2meSA==","signatures":[{"sig":"MEUCIF+iVZY2KvI9xm+Rc6SrAvfSGS3sQhm/1rjp+tYEhuEcAiEAnjOLOUkG2djtkrhPZN4YJv21flvJkqMsGUCVaMXQKRE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56868},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.9_1784189243888_0.5433745250179267","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"@homedev/framework","version":"1.0.10","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.10","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"f14f04631ae1ba49757d08e0791af77f36dc3799","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.10.tgz","fileCount":4,"integrity":"sha512-u2KpIEQ+R0uepz0j+Qv5tpD5bq5egFJPWjUNuC8xoReBgnD6PlQpCa8gv6Tm5Bi1gDbtJ9HXjGHcsNerg1p+6A==","signatures":[{"sig":"MEQCIFMqQsGGE3E82qS3PR8/2Zz9QLPl1J2TQwLbvTiV2l4qAiAp/pJLb6+Bv43kzIcgpVTAptasdS3a61Z6EHvCjF0/0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57523},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.10_1784208349214_0.28480942177587343","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"@homedev/framework","version":"1.0.11","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.11","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"357dd4bfe7041d2f5a8ae4796905e9747872e683","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.11.tgz","fileCount":4,"integrity":"sha512-nCgGFKtQG9z8eBvRduRO/DpStS7cAaIUvt4t3wKEJD/TfSFNiLP5B1C0QqjPRgRjRinGL7DC+HWFQkTe3VkUrA==","signatures":[{"sig":"MEQCIBuvwsC17XNNvaY7geT2TWu1jOyf/HsK3XO7A0YTqMb7AiBEULPffW1BH164xX96QkUoiA8yPUcRLrQzbff1KIsuyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57531},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.11_1784273391511_0.9542518045278829","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"@homedev/framework","version":"1.0.12","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.12","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"8a4f1ece7fca10e75017ee6e046c690ceaf66315","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.12.tgz","fileCount":4,"integrity":"sha512-mt9ZiG3NfdOK1JVkMrINQ0+uPTvVYhrpT08AfgieVmn0xicglag9pVk8BQtGuynFEvujrjl20beD0Ae3Nf3KdQ==","signatures":[{"sig":"MEUCIQDJA7JxvegLbXf3xHrw0yMWlcV6Bc1uJfaphVV32gMXbwIgdls6Caf0Gs2g7CzwiI6o/pmaTY1iSfWHDxyrA6uaEu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57517},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.12_1784274355990_0.6279847965833993","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"@homedev/framework","version":"1.0.13","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.13","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"57aa1755d5cbef6151b5866a9289ddb53440696a","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.13.tgz","fileCount":4,"integrity":"sha512-nU6kXlZ0xcvOFrIOioaq6Q+pgxxnAlF+8DKx8sw3C65bIpLkMOfRu032WdOyjTlah3TG1NAmVj0ZU5pFLPU2/A==","signatures":[{"sig":"MEUCIAVLGISTIesGp2qCxzx5IOWqoDKCE3Ih0n45hqQK6rgUAiEA1ED/b/af5BMzcBwm3NEGUjTbOr0l7SveI7Ra5EqM0IA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61084},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.13_1784805203651_0.17082551846421445","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"@homedev/framework","version":"1.0.14","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.14","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"3544f59032308d8ee0019974cf3090cbc3340353","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.14.tgz","fileCount":4,"integrity":"sha512-W1IPpBI5d80gJgDkzTLXPrldurvcChcCa1r0ujNJ+M13rM9l8RtBX8qQXipj9NYe/KIiZf8TOo79MeZWpT8TIw==","signatures":[{"sig":"MEQCIHmY+LQxpD4hhK9+Pn4UlWYIjx7j7vPRC2gg0q7sgoZHAiBWLlstNhaNDT85Tu+l5+qef7E6jg2sN2a6Z9QRfrqjcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61210},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.14_1784806481791_0.0784108110191466","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"@homedev/framework","version":"1.0.15","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.15","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"45e90605ad3e5049b2cdaf9d582cd75768db4549","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.15.tgz","fileCount":4,"integrity":"sha512-fhxKjfmHQjnl3X0zUf7BUU1kFzAO0cqcye40QJpGMdqTp39DgvoCRKyunfVR20/7xsQpbMe6NhIyvFHUKLVvBg==","signatures":[{"sig":"MEYCIQDJQBOVwRkPyJ975feLZL7mh1AO7mZWPZrX28RxlppDWAIhAMKJ0smrz72L3Q05s24P9p1k/24qmUVejITm4L8yR8YN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61210},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.15_1784807120475_0.6761176368283328","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"@homedev/framework","version":"1.0.16","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.16","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"a3cbdb5bd80d9d5cccd92470abc4b26c7c42e89e","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.16.tgz","fileCount":4,"integrity":"sha512-CHYhDMikDWZVjixKBk+UgcWBSXHBJ6xgVcAKOgT6L/w6wXy4TwUBCK6AvgB4L0/SwegzLOJi3Q8n5HR7rH6yxg==","signatures":[{"sig":"MEUCIH8IIMUyaG+dyjjTXjgeT7kdUsXHKaOCTfhGP0XO964LAiEA+yaYsim4EIl8gZSHOheusbJQqh7PlYZ9Eth3csGSGgE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61709},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.16_1784819026345_0.7402201916186462","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"@homedev/framework","version":"1.0.17","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.17","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"758914b535ede1137df4ad6cb09a9ded26d4cb4c","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.17.tgz","fileCount":4,"integrity":"sha512-xu9DWVrIGLt9Yx0ZE8L6Fz5to/LX6ybx5bD8mmwhhCybWR38s9X5nvROnJuS1wwvbYwjpEXHWIfoZt884WEaJw==","signatures":[{"sig":"MEYCIQDO3g/JG3KJJT1FYQ8kAb1x4pKLpcB8B1geD3GhEiK0PQIhAKW/fe4gStye4VccLI67rSm4isbsYQlnqYV52wuQr8rm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61979},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.17_1784878180221_0.9752076760273192","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"@homedev/framework","version":"1.0.18","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.18","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"3ac9f94694da47edb7dbe6bf3a4635d84b969671","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.18.tgz","fileCount":4,"integrity":"sha512-ODEe335x6k6M3bbE23Q+Achaa30j1PtEqMKHBSh2I+y7VdElnYKlQa3BKUScFe1NUeaRkcM4h/1arlm8cjvXVg==","signatures":[{"sig":"MEUCIQCmvtdZkhTGY3Gm7zFejM6AF7QYXxQpeBqM+tB+Ulh04wIgbAeYsub0qA9ztQ4FA8iA0DViXevKGOP7deClsCWEIz0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61978},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.18_1784878674232_0.7350805359971981","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"@homedev/framework","version":"1.0.19","author":{"name":"julzor"},"license":"ISC","_id":"@homedev/framework@1.0.19","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"dist":{"shasum":"36a116a40e433564dbaa5c5d61e4c211f2b6f874","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.19.tgz","fileCount":4,"integrity":"sha512-HCxaHM4kiLEMeOQz9Bg43c2X7Wlqfo2Ptq1Aw8fNDEXNJnwJH7Jzk/gpWrjMRT/rwhmRzxuaG0FupJfPi+lV6Q==","signatures":[{"sig":"MEQCICbRVzklY4LzxGmH7aFFZzk8vK6P/bUMgwjsn1AVJYswAiAxjj84DDEC+Vmi1GlKhvahqoVFfOxeaU66GSWM1+v05A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62226},"main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_npmUser":{"name":"julzor","email":"mail@julz.fr"},"_npmVersion":"10.9.8","description":"homedev framework","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/framework_1.0.19_1784879749237_0.3176888550621797","host":"s3://npm-registry-packages-npm-production"}},"1.0.20":{"name":"@homedev/framework","version":"1.0.20","description":"homedev framework","author":{"name":"julzor"},"license":"ISC","main":"dist/index.js","type":"module","typings":"dist/index.d.ts","_id":"@homedev/framework@1.0.20","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-mINql4tfpS3MN0GFXzDARzn4o/XcJgfw/sASoKwJa7RyAZO5Q/HGHuxRKoswvkXMXlHz6yF7UmCnlslv3cbnEg==","shasum":"62f07989427d2f228876db69eb308aebf88d5b93","tarball":"https://registry.npmjs.org/@homedev/framework/-/framework-1.0.20.tgz","fileCount":4,"unpackedSize":62712,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDsSu95fhqygvWvPUpoy9mioEvB3DksJ86zC+3TvSdI0gIgfgrzijM53qsbzXeOyfuxFYm1kZg3L4kAHAPbzNA9kUI="}]},"_npmUser":{"name":"julzor","email":"mail@julz.fr"},"directories":{},"maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/framework_1.0.20_1787421224781_0.151116597770659"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-07T18:42:18.688Z","modified":"2026-08-22T17:53:45.086Z","0.0.1":"2026-03-07T18:42:18.890Z","0.0.2":"2026-03-08T11:01:59.142Z","0.0.3":"2026-03-08T11:29:43.106Z","0.0.4":"2026-03-08T12:15:46.244Z","0.0.5":"2026-03-08T12:25:21.537Z","0.0.6":"2026-03-08T13:56:53.420Z","0.0.7":"2026-03-09T10:53:11.483Z","0.0.8":"2026-03-10T16:30:56.613Z","0.0.9":"2026-03-10T16:42:13.974Z","0.0.10":"2026-03-10T16:52:14.019Z","0.0.11":"2026-03-10T17:56:30.618Z","0.0.12":"2026-03-12T18:22:49.134Z","0.0.13":"2026-04-08T10:13:30.952Z","1.0.0":"2026-04-08T10:19:22.121Z","1.0.1":"2026-04-08T10:51:49.048Z","1.0.2":"2026-04-10T09:46:17.783Z","1.0.3":"2026-04-21T08:49:41.617Z","1.0.5":"2026-07-13T14:48:08.525Z","1.0.6":"2026-07-14T07:12:07.178Z","1.0.7":"2026-07-14T07:20:41.644Z","1.0.8":"2026-07-16T06:51:21.479Z","1.0.9":"2026-07-16T08:07:24.017Z","1.0.10":"2026-07-16T13:25:49.357Z","1.0.11":"2026-07-17T07:29:51.677Z","1.0.12":"2026-07-17T07:45:56.131Z","1.0.13":"2026-07-23T11:13:23.799Z","1.0.14":"2026-07-23T11:34:41.926Z","1.0.15":"2026-07-23T11:45:20.609Z","1.0.16":"2026-07-23T15:03:46.482Z","1.0.17":"2026-07-24T07:29:40.358Z","1.0.18":"2026-07-24T07:37:54.350Z","1.0.19":"2026-07-24T07:55:49.373Z","1.0.20":"2026-08-22T17:53:44.920Z"},"author":{"name":"julzor"},"license":"ISC","description":"homedev framework","maintainers":[{"name":"julzor","email":"mail@julz.fr"}],"readme":"# homedev framework\n\nSet of classes and utilities for extending Node.js with common patterns and helpers.\n\n## Logger\n\n### constructor(options?)\nCreates a logger with optional overrides for level, timestamp, and output function.\n\nArguments:\n- options: partial logger configuration.\n\nUsage:\n```ts\nconst log = new Logger({ level: 'WARN', timeStamp: true })\n```\n\n### write(level, ...args)\nWrites a log message at the given level when allowed by current threshold.\n\nArguments:\n- level: log level name, for example INFO or ERROR.\n- args: message parts to log.\n\nUsage:\n```ts\nlog.write('ERROR', 'Something failed', err)\n```\n\n### info(...args), warn(...args), error(...args), debug(...args), verbose(...args)\nConvenience methods for common log levels.\n\nArguments:\n- args: message parts to log.\n\nUsage:\n```ts\nlog.info('Server started')\nlog.warn('Retrying request')\n```\n\n## StringBuilder\n\n### constructor(initial?, options?)\nBuilds strings efficiently with optional formatting behavior.\n\nArguments:\n- initial: initial content as string, list of strings, or another builder.\n- options: indentation and line formatting options.\n\nUsage:\n```ts\nconst sb = new StringBuilder('hello', { indentSize: 2 })\n```\n\n### setOptions(options)\nReplaces current formatting options.\n\nArguments:\n- options: new StringBuilder options.\n\nUsage:\n```ts\nsb.setOptions({ lineSeparator: '\\n', trim: true })\n```\n\n### clear(), isEmpty(), toString()\nCore buffer controls.\n\nArguments:\n- clear: none.\n- isEmpty: none.\n- toString: none.\n\nUsage:\n```ts\nsb.clear()\nsb.isEmpty()\nsb.toString()\n```\n\n### indent(), dedent(), getCurrentIndent()\nControls current indentation level used by formatted line writes.\n\nArguments:\n- indent: none.\n- dedent: none.\n- getCurrentIndent: none.\n\nUsage:\n```ts\nsb.indent().writeLine('child').dedent()\n```\n\n### getLines(), formatLine(line?)\nReads content as lines or formats a single line according to options.\n\nArguments:\n- line: optional source line.\n\nUsage:\n```ts\nconst line = sb.formatLine('hello')\nconst lines = sb.getLines()\n```\n\n### write(...args), writeLine(...args), writeMap(items, fn)\nMain writing helpers.\n\nArguments:\n- write: any values to append.\n- writeLine: values to append as formatted lines.\n- writeMap: items list and callback `(item, index, builder)`.\n\nUsage:\n```ts\nsb.write('A', 'B').writeLine('C')\nsb.writeMap([1, 2], n => `${n}\\n`)\n```\n\n## Markdown\n\n### header(text, level?)\nWrites a markdown heading and an empty line after it.\n\nArguments:\n- text: heading content.\n- level: heading level, normalized to 1..6.\n\nUsage:\n```ts\nmd.header('Overview', 2)\n```\n\n### codeBlock(code?, language?), endCodeBlock()\nWrites fenced code blocks. Fences are adjusted if code already contains backticks.\n\nArguments:\n- code: optional code text.\n- language: optional language id.\n\nUsage:\n```ts\nmd.codeBlock('const x = 1', 'ts')\nmd.codeBlock().writeLine('manual').endCodeBlock()\n```\n\n### link(text, url, title?)\nWrites an inline markdown link.\n\nArguments:\n- text: visible link text.\n- url: link target.\n- title: optional title attribute.\n\nUsage:\n```ts\nmd.link('Docs', '/docs', 'Open docs')\n```\n\n### table(headers, rows)\nWrites a markdown table with automatic column padding.\n\nArguments:\n- headers: column headers (must not be empty).\n- rows: table rows as arrays.\n\nUsage:\n```ts\nmd.table(['Name', 'Age'], [['Alice', '30'], ['Bob', '25']])\n```\n\n### blockquote(text)\nWrites one blockquote line per input line.\n\nArguments:\n- text: quote text, can be multiline.\n\nUsage:\n```ts\nmd.blockquote('Line 1\\nLine 2')\n```\n\n### bold(text), italic(text), code(text)\nInline text style helpers.\n\nArguments:\n- text: value to wrap in markdown markers.\n\nUsage:\n```ts\nmd.bold('Important').write(' ').italic('note').write(' ').code('x')\n```\n\n### item(text), items(values), orderedList(items, start?)\nList helpers for bullets and numbered lists.\n\nArguments:\n- item: single bullet text.\n- items: array of values or object map.\n- orderedList: list items and optional start index.\n\nUsage:\n```ts\nmd.item('One')\nmd.items(['A', 'B'])\nmd.orderedList(['First', 'Second'], 3)\n```\n\n### horizontalRule(), image(alt, url)\nWrites separators and images.\n\nArguments:\n- horizontalRule: none.\n- image: alt text and image URL.\n\nUsage:\n```ts\nmd.horizontalRule()\nmd.image('logo', '/img/logo.png')\n```\n\n### strikethrough(text), highlight(text), subscript(text), superscript(text)\nAdditional inline formatting helpers.\n\nArguments:\n- text: content to format.\n\nUsage:\n```ts\nmd.strikethrough('old').write(' ').highlight('new')\n```\n\n### taskList(items)\nWrites GitHub-style task checklist entries.\n\nArguments:\n- items: list of `{ text, checked }`.\n\nUsage:\n```ts\nmd.taskList([{ text: 'Ship release', checked: false }])\n```\n\n### section(text, level?), endSection(), setSectionLevel(level)\nNested section heading workflow.\n\nArguments:\n- section: heading text and optional explicit level.\n- endSection: none.\n- setSectionLevel: explicit current section depth.\n\nUsage:\n```ts\nmd.section('Chapter')\nmd.section('Details')\nmd.endSection()\n```\n\n## Array functions\n\n### mapAsync(callback), forEachAsync(callback)\nAsync iteration helpers.\n\nArguments:\n- callback: async callback `(item, index, array)`.\n\nUsage:\n```ts\nconst names = await users.mapAsync(async u => u.name)\nawait users.forEachAsync(async u => save(u))\n```\n\n### sortBy(selector, ascending?)\nReturns a sorted copy using selector value comparison.\n\nArguments:\n- selector: function extracting sort value.\n- ascending: sort direction, default true.\n\nUsage:\n```ts\nconst ordered = users.sortBy(u => u.age)\n```\n\n### unique(), uniqueBy(selector), groupBy(selector)\nDeduplication and grouping helpers.\n\nArguments:\n- unique: none.\n- uniqueBy: key selector.\n- groupBy: key selector.\n\nUsage:\n```ts\nids.unique()\nusers.uniqueBy(u => u.id)\nusers.groupBy(u => u.role)\n```\n\n### toObject(keySelector, valueSelector?), toObjectWithKey(key)\nConverts arrays into object maps.\n\nArguments:\n- keySelector: key function.\n- valueSelector: optional value function.\n- key: property name used as key.\n\nUsage:\n```ts\nusers.toObject(u => u.id)\nusers.toObjectWithKey('id')\n```\n\n### nonNullMap(callback), nonNullMapAsync(callback)\nMaps and removes nullish callback outputs.\n\nArguments:\n- callback: mapping callback.\n\nUsage:\n```ts\nconst values = items.nonNullMap(i => i.optional)\n```\n\n### findOrFail(predicate, message?, thisArg?)\nFinds first match or throws an error.\n\nArguments:\n- predicate: match function.\n- message: optional error message.\n- thisArg: optional predicate context.\n\nUsage:\n```ts\nconst admin = users.findOrFail(u => u.role === 'admin', 'Admin not found')\n```\n\n### selectFor(predicate, selector, message?, thisArg?)\nFinds an item then returns selected projection.\n\nArguments:\n- predicate: match function.\n- selector: projection function.\n- message: optional error message.\n- thisArg: optional predicate context.\n\nUsage:\n```ts\nconst email = users.selectFor(u => u.id === 1, u => u.email)\n```\n\n### createInstances(Target, ...args)\nCreates class instances from array values.\n\nArguments:\n- Target: constructor function.\n- args: shared constructor args.\n\nUsage:\n```ts\nconst models = rows.createInstances(UserModel, commonConfig)\n```\n\n### mergeAll(options?)\nMerges all array objects into one output object.\n\nArguments:\n- options: merge conflict behavior options.\n\nUsage:\n```ts\nconst config = [{ a: 1 }, { b: 2 }].mergeAll()\n```\n\n### Array.flat(value)\nStatic helper that flattens array input or wraps non-array values.\n\nArguments:\n- value: value or array.\n\nUsage:\n```ts\nconst result = Array.flat([1, [2, 3]])\n```\n\n## Object functions\n\n### mapEntries(obj, callback)\nTransforms object entries into a new object.\n\nArguments:\n- obj: source object.\n- callback: returns `[newKey, newValue]`.\n\nUsage:\n```ts\nconst mapped = Object.mapEntries({ a: 1 }, ([k, v]) => [k.toUpperCase(), v * 2])\n```\n\n### toList(obj, keyName)\nConverts object map into array items and adds key field.\n\nArguments:\n- obj: source object.\n- keyName: property name for map key.\n\nUsage:\n```ts\nconst rows = Object.toList({ x: { n: 1 } }, 'id')\n```\n\n### deepClone(obj)\nPerforms deep clone using structuredClone or JSON fallback.\n\nArguments:\n- obj: value to clone.\n\nUsage:\n```ts\nconst copy = Object.deepClone(original)\n```\n\n### merge(source, target, options?)\nDeep-merges source values into target object.\n\nArguments:\n- source: source object.\n- target: target object, modified in place.\n- options: conflict and strategy handlers.\n\nUsage:\n```ts\nObject.merge(sourceConfig, targetConfig)\n```\n\n### navigate(obj, callback)\nWalks object tree and allows replace/delete/update while traversing.\n\nArguments:\n- obj: root object.\n- callback: visitor callback with path context.\n\nUsage:\n```ts\nObject.navigate(data, ({ value }) => value)\n```\n\n### find(from, predicate)\nReturns nested values matching predicate.\n\nArguments:\n- from: root object.\n- predicate: match function.\n\nUsage:\n```ts\nconst ids = Object.find(data, ({ key }) => key === 'id')\n```\n\n### select(from, path, options?)\nSelects nested values with path expressions and options.\n\nArguments:\n- from: root object.\n- path: selection path.\n- options: set/default/optional behavior.\n\nUsage:\n```ts\nconst city = Object.select(user, 'address.city')\n```\n\n## String functions\n\n### toPascal(), capitalize(), toCamel(), toSnake(), toKebab(), changeCase(to)\nCase conversion helpers.\n\nArguments:\n- changeCase: `to` target format.\n\nUsage:\n```ts\n'hello world'.toCamel()\n'hello_world'.toPascal()\n'sample'.changeCase('upper')\n```\n\n### splitWithQuotes(separator?), splitNested(separator, open, close)\nSplit helpers that respect quoted or nested segments.\n\nArguments:\n- splitWithQuotes: optional separator, default comma.\n- splitNested: separator plus opening/closing delimiters.\n\nUsage:\n```ts\n'a, \"b, c\", d'.splitWithQuotes(',')\n'a(b,c),d'.splitNested(',', '(', ')')\n```\n\n### toStringBuilder()\nConverts string into StringBuilder initialized by lines.\n\nArguments:\n- none.\n\nUsage:\n```ts\nconst sb = 'line1\\nline2'.toStringBuilder()\n```\n\n### toHtmlLink(path?), toRgb(), toArgb()\nFormatting helpers for links and colors.\n\nArguments:\n- path: optional URL for anchor.\n- toRgb: none, expects hex color string.\n- toArgb: none, expects ARGB hex color string.\n\nUsage:\n```ts\n'Docs'.toHtmlLink('/docs')\n'#ff0080'.toRgb()\n'80ff0080'.toArgb()\n```\n\n### single(char), remove(char), toAlphanum(), toAlpha()\nString cleanup helpers.\n\nArguments:\n- char: character or regex fragment to collapse/remove.\n\nUsage:\n```ts\n'a---b'.single('-')\n'a-b-c'.remove('-')\n'a!1b'.toAlphanum()\n```\n\n### padBlock(indent, separator?, padder?), tokenize(values, tokenizer?), stripIndent()\nText block and templating helpers.\n\nArguments:\n- padBlock: indent size, optional separator and pad char.\n- tokenize: value map and optional token regex.\n- stripIndent: none.\n\nUsage:\n```ts\n'first\\nsecond'.padBlock(2)\n'Hello ${name}'.tokenize({ name: 'Ada' })\n```\n\n## File functions\n\n### exists(fileName)\nChecks whether a file is readable.\n\nArguments:\n- fileName: file path.\n\nUsage:\n```ts\nconst ok = await exists('config.json')\n```\n\n### locate(fileName, dirs?)\nResolves a file path by searching optional directories.\n\nArguments:\n- fileName: relative or absolute file name.\n- dirs: optional directories to check.\n\nUsage:\n```ts\nconst fullPath = await locate('settings.json', ['.', 'config'])\n```\n\n### loadFormat(fileName, options?)\nReads and parses file content by format or extension matching.\n\nArguments:\n- fileName: file to load.\n- options: parser map, lookup dirs, or forced format.\n\nUsage:\n```ts\nconst data = await loadFormat('data.json')\n```\n\n### writeFormat(filePath, content, options?)\nEncodes and writes content using selected encoder.\n\nArguments:\n- filePath: destination path.\n- content: value to write.\n- options: encoder map and format.\n\nUsage:\n```ts\nawait writeFormat('out.json', { ok: true }, { format: 'json' })\n```\n\n### globMap(pattern, options)\nRuns async mapping over files that match glob pattern(s).\n\nArguments:\n- pattern: glob pattern or direct file path.\n- options: cwd, optional filter, and async mapper.\n\nUsage:\n```ts\nconst files = await globMap('**/*.ts', { cwd: '.', map: async f => f })\n```\n\n### writeOutputs(outputs, options?), writeOutput(output, options?)\nWrites one or many typed outputs with filtering support.\n\nArguments:\n- outputs/output: output definition(s) with name/value/type/class.\n- options: target dir, class filtering, and pre-write hook.\n\nUsage:\n```ts\nawait writeOutputs([{ name: 'a.json', type: 'json', value: { a: 1 } }], { targetDirectory: 'dist' })\n```\n\n### importList(modules, options?), importGlob(patterns, options?)\nDynamically imports modules from explicit list or glob patterns.\n\nArguments:\n- modules/patterns: module list or glob list.\n- options: cwd, default-resolution mode, filters, fail strategy, mapper.\n\nUsage:\n```ts\nconst mods = await importList(['./tool.ts'])\nconst many = await importGlob(['**/*.ts'], { cwd: 'plugins' })\n```\n\n### getCwd(cwd?)\nResolves effective working directory.\n\nArguments:\n- cwd: optional absolute or relative directory.\n\nUsage:\n```ts\nconst base = getCwd('config')\n```\n\n## Global helpers\n\n### AsyncFunction\nRuntime alias to async function constructor.\n\nUsage:\n```ts\nconst fn = new AsyncFunction('x', 'return x * 2')\n```\n\n### defined(value, msg?)\nReturns value when not null/undefined; throws otherwise.\n\nArguments:\n- value: value to validate.\n- msg: optional error message.\n\nUsage:\n```ts\nconst safe = defined(input, 'Input is required')\n```\n","readmeFilename":"README.md"}