{"_id":"@tganzhorn/fastify-modular","_rev":"32-ee20527b9fee66863e6f967503cbd308","name":"@tganzhorn/fastify-modular","dist-tags":{"latest":"0.1.16"},"versions":{"0.0.1":{"name":"@tganzhorn/fastify-modular","version":"0.0.1","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.1","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"dist":{"shasum":"07c90bbe8e84c1ad00eb38795c0296be9110cde3","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.1.tgz","fileCount":6,"integrity":"sha512-S+7b+km/bdbshM0/tNYNITfmgFnDGTakKmeQnrcIo7BfUYOw5QUjZU5ZoSTeSR5NXZTz7qSslqcIYO1zFXX7nQ==","signatures":[{"sig":"MEUCIDat/WYOnYmQgDZDvtkamcW0VinVsp5gIciwjWYWrCCFAiEA6G7lyXlM1AdUoJMoQZUREtMP+S+k3wVsggAZ9qVwMKs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126056},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"echo \"Error: no test specified\" && exit 1","build":"tsup src/index.ts --dts"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\8f95c179ea597ae83b32237bfe04de53\\tganzhorn-fastify-modular-0.0.1.tgz","_integrity":"sha512-S+7b+km/bdbshM0/tNYNITfmgFnDGTakKmeQnrcIo7BfUYOw5QUjZU5ZoSTeSR5NXZTz7qSslqcIYO1zFXX7nQ==","_npmVersion":"10.2.3","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.10.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","rollup":"^4.44.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.1_1750353584321_0.8050178233709411","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@tganzhorn/fastify-modular","version":"0.0.2","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.2","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"dist":{"shasum":"e640c8372a15bad915c3b6044fcbf9fcc5082dc9","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.2.tgz","fileCount":6,"integrity":"sha512-mefpdJyZlMY86Y3H4+/PZnmXtT/0ccv+Kuf1M+nPAceelp28JjmFwYqHiwJc7Sg155hFGAMIc+GqwnujtxIRkA==","signatures":[{"sig":"MEQCIADsVcOdRwj3G0dNfVLXgxKtIm3CKxXUETtMnAjA2Df4AiB7xq0QmyusnVJjEcpe/E2nZ88SczFmkk1spiabSy/D4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126254},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"echo \"Error: no test specified\" && exit 1","build":"tsup src/index.ts --dts"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\00285e12931edf698a8427bcc9de3b1c\\tganzhorn-fastify-modular-0.0.2.tgz","_integrity":"sha512-mefpdJyZlMY86Y3H4+/PZnmXtT/0ccv+Kuf1M+nPAceelp28JjmFwYqHiwJc7Sg155hFGAMIc+GqwnujtxIRkA==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.2.3","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.10.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","rollup":"^4.44.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.2_1750353956517_0.4905609984157937","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@tganzhorn/fastify-modular","version":"0.0.3","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.3","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"dist":{"shasum":"5a0fabe8f46e6d5cb409cf243aac2c17dbef175c","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.3.tgz","fileCount":6,"integrity":"sha512-fYqOpcE4onJN7bCzqV1K6eiTg/BpQE++CbSU1xllXh7fhwORmO6/IClwU/AVGs2WeZaENmtc+Jjsrb3JUoPlYw==","signatures":[{"sig":"MEQCIEwxrHBFEfl6MF4Qbeen56ZEmuG7EyOrcLi9PLz7jRWTAiBX1iBKhWdou6rLk35NYws+vGFiMpfsnBU+rDXCN1huCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":130016},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.3.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\c4c9045ece982277787174885882e59a\\tganzhorn-fastify-modular-0.0.3.tgz","_integrity":"sha512-fYqOpcE4onJN7bCzqV1K6eiTg/BpQE++CbSU1xllXh7fhwORmO6/IClwU/AVGs2WeZaENmtc+Jjsrb3JUoPlYw==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.2.3","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.10.0","dependencies":{"ts-node":"^10.9.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","rollup":"^4.44.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.3_1750358456441_0.3471659081170384","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@tganzhorn/fastify-modular","version":"0.0.4","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.4","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"81918f55b46d494353ad1a2dc3d80936975fbc81","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.4.tgz","fileCount":9,"integrity":"sha512-x6d0ChxTF3WVAg0wBzc39RMChpygxlKpUTRHZpvCI7SHLjy1ltSG6r2oJJYcis2m5ZqDT35SSuMhenVkJ0q/nw==","signatures":[{"sig":"MEQCIDyIalTHWNUwv55AhgS1Fjg+oNRRRSS4RxEtwgzW+4G8AiBBH7oj3bz2wS+K3SokbfVCRn1CZHH21I8ld9/ghmQ9+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136613},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.4.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests/*.ts -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\63bff8b9e0221fff51b5e82d28af2a4f\\tganzhorn-fastify-modular-0.0.4.tgz","_integrity":"sha512-x6d0ChxTF3WVAg0wBzc39RMChpygxlKpUTRHZpvCI7SHLjy1ltSG6r2oJJYcis2m5ZqDT35SSuMhenVkJ0q/nw==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.2.3","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.10.0","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.4_1750413602546_0.7089750593975066","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@tganzhorn/fastify-modular","version":"0.0.5","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.5","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"a6c8773e30386f5cd1c9204bb34f0d0d8d7a10f6","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.5.tgz","fileCount":9,"integrity":"sha512-qvIZGzd+8O1JqpC0me3l6ULhKnOg5a9JAQmDhAKFhGSGq9ZGnhuV2Q2bGRGxrtO/3F3meUux5f0+YWq7SzzNXQ==","signatures":[{"sig":"MEQCIFetwceAImmNtZzbpKjMlWG/uwgDEKKmpACbQY+c4CWwAiByxAkVmpspyOKat6Btp2RTY8LqpBZGsL8g6++Km4wINA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136617},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.5.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests/*.ts -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\005d1f25a75eb0fcdb969ddcf02ee433\\tganzhorn-fastify-modular-0.0.5.tgz","_integrity":"sha512-qvIZGzd+8O1JqpC0me3l6ULhKnOg5a9JAQmDhAKFhGSGq9ZGnhuV2Q2bGRGxrtO/3F3meUux5f0+YWq7SzzNXQ==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.2.3","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.10.0","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.5_1750413757421_0.9495750534133887","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@tganzhorn/fastify-modular","version":"0.0.6","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.6","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"3915d81f74a81073b4d87e12201c625aedbd811b","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.6.tgz","fileCount":9,"integrity":"sha512-Jidwv601fhBP+887TEo88UUsKKXVQcTFXi7Ot7sLZXJI4+51iRUfQ/vdZKFjZi98l90+zgnZSFgaFjz+bfuCEQ==","signatures":[{"sig":"MEQCICjM3ZVPxV9kXOod7YrAUf1ug2hWZkUOawK0LhWXCmHDAiAgxFbYvVD9TjXPkZTVusmtdyErROpLTdOBrmYKkDCdtw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140046},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.6.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\88a64900e3ec9b92d0143a93db4b7a60\\tganzhorn-fastify-modular-0.0.6.tgz","_integrity":"sha512-Jidwv601fhBP+887TEo88UUsKKXVQcTFXi7Ot7sLZXJI4+51iRUfQ/vdZKFjZi98l90+zgnZSFgaFjz+bfuCEQ==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.2.3","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.10.0","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.6_1750437133081_0.6727933200262044","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@tganzhorn/fastify-modular","version":"0.0.7","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.7","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"71f3170307028078727fb78e5e58af780ada24f3","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.7.tgz","fileCount":9,"integrity":"sha512-kwAv1/RQo/6nKktjkVyRS//YWd7q1sm69fdQlxG5KMAFb8+tsNx0bb0MBBOGT8VKB/gvaHshY/teSUCrfC9ueg==","signatures":[{"sig":"MEUCIQCvTnFmoVL14aygCacRotGZHYP/cp7+qD2CvUqV/h0MjAIgde8C4wsBq/sz2OGy7AaBZkQsymVHEvDwrNcTPKFQOog=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140072},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.7.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\5563f9840baaaac9c64ab4d8d43d0667\\tganzhorn-fastify-modular-0.0.7.tgz","_integrity":"sha512-kwAv1/RQo/6nKktjkVyRS//YWd7q1sm69fdQlxG5KMAFb8+tsNx0bb0MBBOGT8VKB/gvaHshY/teSUCrfC9ueg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.7_1750662679242_0.16227298572423243","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@tganzhorn/fastify-modular","version":"0.0.8","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.8","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"89eead470f59f148aca33c048c7f43a08d5e80e8","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.8.tgz","fileCount":9,"integrity":"sha512-8agMRwp8EBwO2iHlBea+Hgb91pPP8vd8xud3Ig6OMYMnKS0QCcEm6c39Tn8O4RhxRpU0HhCA6XYUt7mbaNx/RQ==","signatures":[{"sig":"MEUCIGJ5YIK7UOfWb5LOMRMaIwUNgalzTbRdXDYBJDxf/armAiEAq+pb8jlXaFdWTXH4KtG3xTIbuE7Db3Ul5HmcVjARLWY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140584},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.8.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\0a2d861a075aa2ebc4780b1384c6ed4d\\tganzhorn-fastify-modular-0.0.8.tgz","_integrity":"sha512-8agMRwp8EBwO2iHlBea+Hgb91pPP8vd8xud3Ig6OMYMnKS0QCcEm6c39Tn8O4RhxRpU0HhCA6XYUt7mbaNx/RQ==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.8_1750663773724_0.5727260086478547","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@tganzhorn/fastify-modular","version":"0.0.9","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.9","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"25cd9113c5ac46f2da5fcb4ef324085bbfb50560","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.9.tgz","fileCount":9,"integrity":"sha512-802DoWQRl2pBZjL4nFuDSIcwh7x6KuL8BmlU3PH8Ss3JcvDte8kPEm0itvEf5Xxhj18o5AVPmhKyHGeByNLJ+A==","signatures":[{"sig":"MEUCIDIjNb6c8zmuM+O859bUmz5HJQ9OiHKo1kyc1BEFGfTPAiEA3CvtOt5sJEEcjugh0yp8UK77+7ocLhUEprvS+89rdH4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140659},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.9.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\4b7311523ff7e6903292cacea2a4fb27\\tganzhorn-fastify-modular-0.0.9.tgz","_integrity":"sha512-802DoWQRl2pBZjL4nFuDSIcwh7x6KuL8BmlU3PH8Ss3JcvDte8kPEm0itvEf5Xxhj18o5AVPmhKyHGeByNLJ+A==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.9_1750664093311_0.5982795167158692","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"@tganzhorn/fastify-modular","version":"0.0.10","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.10","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"8de733a672c5771a332c3dded455eccfdee63a0e","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.10.tgz","fileCount":9,"integrity":"sha512-nM8U3HIICSFfN0vaEX8/bIoaSwLXZDgK4S2KadqFa8gEO1IubJ4l6OlO6Jq2wG2kUp2C4cJhOcyl1Yx0nzdsug==","signatures":[{"sig":"MEYCIQC4E4p7NgyUrrCsAvHG9oZcaYZwJEnFNlYBPMnSc7BCnwIhAMGIQZswdrVFAhaqmunCcrOxVAjcv/Q+V0r1RuTazlPN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144529},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.10.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\189dd79f4fd16cb90568ffa784f0da1a\\tganzhorn-fastify-modular-0.0.10.tgz","_integrity":"sha512-nM8U3HIICSFfN0vaEX8/bIoaSwLXZDgK4S2KadqFa8gEO1IubJ4l6OlO6Jq2wG2kUp2C4cJhOcyl1Yx0nzdsug==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.10_1750680384791_0.07095247186172582","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"@tganzhorn/fastify-modular","version":"0.0.11","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.11","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"b0cb83d99d9ed993e490bf2ce766eb793e539d4e","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.11.tgz","fileCount":9,"integrity":"sha512-mNLgoOAtpQYgfxmM/4zoqvBiBb+pRicAMx+AIQZVkJn+N4SpzcHatk4MR+DrCuGrseEnhWZs6H2k9bq5xpf3zg==","signatures":[{"sig":"MEQCIDyg/od9w0566w+rmM1AtnHvupyN09iccuiRk67SFsXBAiACf3+7vX0yHqs+/22eXphQqxOUbx3/g5KVJ+RecwqLmw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144505},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.11.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\811a0f097c7f592330de716554d04c18\\tganzhorn-fastify-modular-0.0.11.tgz","_integrity":"sha512-mNLgoOAtpQYgfxmM/4zoqvBiBb+pRicAMx+AIQZVkJn+N4SpzcHatk4MR+DrCuGrseEnhWZs6H2k9bq5xpf3zg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","node-plop":"^0.32.0","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.11_1750680896340_0.5581943985574054","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"@tganzhorn/fastify-modular","version":"0.0.12","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.12","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"46281864a7856a146d289494ebc00dbd4082d6f5","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.12.tgz","fileCount":9,"integrity":"sha512-Pw70TQxpE6WC0RG4fMRN6Oq0JAOOaMK6qdL9LqNmxytVKiq1M3yeKge37MxXWAM0DqL11WO3Dd76nLYPHemJKA==","signatures":[{"sig":"MEYCIQDdS0GytbYkWJg+ehMIAArZZNPe6n4v2d3nBMAV1JwYZAIhAPcJKsRJ8mawl8z0Cxo1YLB+b80CTeoJiary70eSI7Up","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4548077},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.12.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\2d5f5b8b489764540362927ce84164d5\\tganzhorn-fastify-modular-0.0.12.tgz","_integrity":"sha512-Pw70TQxpE6WC0RG4fMRN6Oq0JAOOaMK6qdL9LqNmxytVKiq1M3yeKge37MxXWAM0DqL11WO3Dd76nLYPHemJKA==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","node-plop":"^0.32.0","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.12_1750689753008_0.2685757565184468","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"@tganzhorn/fastify-modular","version":"0.0.13","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.13","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"1c68e4b09e1cdf0f0b05542410a0140cba766ed6","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.13.tgz","fileCount":9,"integrity":"sha512-K8ei32de1KonJgrYJ08g2knLBRw6yDYe4BMhYeZ/tTVsOOdH+Twt25jPB0907xyXqnYCJ1W4347YPFlAu7Tosg==","signatures":[{"sig":"MEQCIChVSOZl7GH/66ZhmrHObV2/zPn31N3kZwZGoXZglDgoAiBBNKxA2YPIVlH8iL7j5v1dnEhq/Mm4WXkeUSsKCK+j4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4548101},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.13.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\e26ea30107abb82762bdf11dcea326ad\\tganzhorn-fastify-modular-0.0.13.tgz","_integrity":"sha512-K8ei32de1KonJgrYJ08g2knLBRw6yDYe4BMhYeZ/tTVsOOdH+Twt25jPB0907xyXqnYCJ1W4347YPFlAu7Tosg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.13_1750689976065_0.027594574392819204","host":"s3://npm-registry-packages-npm-production"}},"0.0.14":{"name":"@tganzhorn/fastify-modular","version":"0.0.14","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.14","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"1667f97ad582146ec98152b0493377c55fbc4122","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.14.tgz","fileCount":9,"integrity":"sha512-jlbeW0pVIdMgW28xYXvRSXyTb9GD0onaUM6dnEVPUPn7y8wnESJy1tIIy48gorGo0JNRlWtNdaWTYIfKTvGGfg==","signatures":[{"sig":"MEUCIBAJrZ8KGxkq8+3rLAvGxcNBB5ky5fMLQw+f/d0AvbNbAiEAtNmpWlfbEDNsQXLE1lzkl7+X+xz6DFHavGkVcX+Sy0I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143460},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.0.14.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\86ce1123da015dc0e5a2608b01fd6bf8\\tganzhorn-fastify-modular-0.0.14.tgz","_integrity":"sha512-jlbeW0pVIdMgW28xYXvRSXyTb9GD0onaUM6dnEVPUPn7y8wnESJy1tIIy48gorGo0JNRlWtNdaWTYIfKTvGGfg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.14_1750690059236_0.14649043997388778","host":"s3://npm-registry-packages-npm-production"}},"0.0.15":{"name":"@tganzhorn/fastify-modular","version":"0.0.15","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.15","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"2a0e61ae67dd7e463d086ae016031d9f55559d95","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.15.tgz","fileCount":9,"integrity":"sha512-LUm+jdla0oIBJOTb9D5Gm/MOt+zoQB0hyiO6mQ3goCkM3L6qjEBXsmTApPHWBvAn1s1rLnn1Fy5qTELTT356Fw==","signatures":[{"sig":"MEUCIQDuN2tPGR30a/o9wfH5o8c+n+sHPsAdgoN4uNjCRr33BgIgNoaYrAD5VdrM02N+QE/TaIb8YvrolHC6eruCWRPd3U0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147758},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"639faed09248e0099a18b2a79cec5a83e105a2f4","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"node-plop":"^0.32.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.15_1750745758668_0.047068221761410234","host":"s3://npm-registry-packages-npm-production"}},"0.0.16":{"name":"@tganzhorn/fastify-modular","version":"0.0.16","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.0.16","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"0d1c6a93b9d0a1ef40d16faba3fbf9a5ecf96a53","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.0.16.tgz","fileCount":9,"integrity":"sha512-vdMG5z94OlLWc6KyqHTSAPdf/Bm6K4tqu8yf/bubIfvIEDFeC0PdC0s/Qm4lkjQw4n/RaUg1pqEerjtLCxUSRA==","signatures":[{"sig":"MEYCIQDEn1Mid2WmHgDwTzByPpNXO3CkfV2MAeTWBn/3IkrNhgIhAM2RNCVqhAfPJ+38hdMqgJm0h0Mv9KJFJzSmuPDz6H+A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4553673},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"226c923eb5c39faf5f9945b74552abadc537e0a9","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","node-plop":"^0.32.0","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17","@fastify/swagger":"^9.5.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.35","rollup-plugin-dts":"^6.2.1","@rollup/plugin-swc":"^0.4.0","esbuild-decorators":"^1.0.0","@fastify/swagger-ui":"^5.2.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.0.16_1750752913182_0.029377317904192957","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@tganzhorn/fastify-modular","version":"0.1.0","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.0","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"97ee0187aaf3a6afce6d8243ded9a70d4e5c5d2d","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.0.tgz","fileCount":9,"integrity":"sha512-VUaeroaGk65pnvLxLpONVPPlqv49rwMRm1otq/EJ+6zeQ5oQWM/V/T2CfvIo5WqhfeyiUQKyy+F3ThoLpojHxg==","signatures":[{"sig":"MEUCIQCeS6o+7lxClo7OTIvZEuaPYWisUn3OJ39NO3NrxV3zagIgESle0THYu/DtBMiVn/3WtgE0+0mk25sY1o7GbP69PpI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67413},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.0.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\b9e75e3eb54ef947d437716f0337ea35\\tganzhorn-fastify-modular-0.1.0.tgz","_integrity":"sha512-VUaeroaGk65pnvLxLpONVPPlqv49rwMRm1otq/EJ+6zeQ5oQWM/V/T2CfvIo5WqhfeyiUQKyy+F3ThoLpojHxg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.9.2","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","@swc/helpers":"^0.5.17","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.0_1751710438644_0.28100809528834203","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@tganzhorn/fastify-modular","version":"0.1.1","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.1","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"0798bf4cfc4f9a11bdf58c07f491f968da4949f8","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.1.tgz","fileCount":6,"integrity":"sha512-dqpoENkCVatUCy2iX4tnlBlbHlM3a478Kip1OYQtBy3RNmfCLy2kXH4MwR/VYpJ/G6CBx1gj9o3vOt9K1nAk+Q==","signatures":[{"sig":"MEUCIQDn+MSrcd3yzxteWRtzhAqMlPwvUi8CvvQBzgcW5YfIZwIgLKiD8AjEok1lVghVcrxEAMJ3T19yjFuc6DQX4pgUzZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64723},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\a7188c3b7d24807c0ec7dd63450706f0\\tganzhorn-fastify-modular-0.1.1.tgz","_integrity":"sha512-dqpoENkCVatUCy2iX4tnlBlbHlM3a478Kip1OYQtBy3RNmfCLy2kXH4MwR/VYpJ/G6CBx1gj9o3vOt9K1nAk+Q==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.9.2","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"keyv":"^5.3.4","bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","@keyv/redis":"^4.5.0","@swc/helpers":"^0.5.17","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.1_1751719849187_0.03204979009774189","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@tganzhorn/fastify-modular","version":"0.1.2","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.2","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"b13ddcd3e4e760c72c553c5e6c3341a8c697bfc4","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.2.tgz","fileCount":6,"integrity":"sha512-kKgx62hzdeF+YWnqrhvhSIikqJIOKZVnSLxqwfgAHUlGFyxetb5GqKavvV54iwbdS/3i2rcGhc58zY3r5KQDsQ==","signatures":[{"sig":"MEUCIAbIf2tLJllYXoBY25asLF24EqMr/G7Pi0q0Lt5YuYN7AiEAjSmFrXRZpU0FhbeJvBg6rUzG9iJtC4nnLAFbNqrFkHQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81000},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tganz\\AppData\\Local\\Temp\\f4798ac7dc654a66806f75c3bb23d98e\\tganzhorn-fastify-modular-0.1.2.tgz","_integrity":"sha512-kKgx62hzdeF+YWnqrhvhSIikqJIOKZVnSLxqwfgAHUlGFyxetb5GqKavvV54iwbdS/3i2rcGhc58zY3r5KQDsQ==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.9.2","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.2_1751719991977_0.13898544416169822","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@tganzhorn/fastify-modular","version":"0.1.3","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.3","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"7dade4016c1cc4883c31300ab6eb7bdad2e8ee2d","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.3.tgz","fileCount":9,"integrity":"sha512-1MWCytY2OddT+YfV5dJtKuILL7Zlcdxd5R1K3VK4rvJ4zuhnNGjKbNbz0kdRRZDFvl9r8qzcxNMjgusyGed5tw==","signatures":[{"sig":"MEYCIQCubOGCbFv4P/2HJQnycZCpnTM1cMN0zyWCYxQZwQo/KgIhAM4pTqtBlE56P7MYr5fpzTF7ZGuPvunv13PHVX+zIevL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89032},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.3.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\2f9ddb39626cba43d49e60c3d3ea5de9\\tganzhorn-fastify-modular-0.1.3.tgz","_integrity":"sha512-1MWCytY2OddT+YfV5dJtKuILL7Zlcdxd5R1K3VK4rvJ4zuhnNGjKbNbz0kdRRZDFvl9r8qzcxNMjgusyGed5tw==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.3_1751872151627_0.23265991695989952","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@tganzhorn/fastify-modular","version":"0.1.4","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.4","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"07622cac1cd5b55f79632422d799ae066517ebf1","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.4.tgz","fileCount":9,"integrity":"sha512-62A5/T9wXFWvWQAZHLlmHErvyEnko2mIl0ICQnsEeUjflkRhGK/UwJSUpV2Bm70dGyPweJo4TAYW3Vp63js9Ag==","signatures":[{"sig":"MEUCIHzQFoz7XQG2JR3NGJxAD+O5iwrq0znLdhe/Ec/wo+SsAiEA8prClBSg+2/gNZW4G6YpOr8Wry7k1JE4k9TAgvV96Us=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90479},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.4.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\ad41675d770562391490c309a0cc21c2\\tganzhorn-fastify-modular-0.1.4.tgz","_integrity":"sha512-62A5/T9wXFWvWQAZHLlmHErvyEnko2mIl0ICQnsEeUjflkRhGK/UwJSUpV2Bm70dGyPweJo4TAYW3Vp63js9Ag==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.4_1751873203346_0.0833105717062339","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@tganzhorn/fastify-modular","version":"0.1.5","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.5","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"59aec7c7faf43cf7c2b8da06b58619787e9d3ad4","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.5.tgz","fileCount":9,"integrity":"sha512-lG6oQEAkp4wwA+/zACR2JLMkDk2x3vlpuij2wAVnvXn59SPDaPmN5asMNKwjw9TCnvT1gqyjPazEicPm0/UeyA==","signatures":[{"sig":"MEQCIHLKNsN+H8RDP81CsLuMCDU87d4q6z1/af1aZ1cQl63kAiBgX4IaQf43yDSg458m7S4Qs2hz8FZueFuW63qoO8jTcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90817},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.5.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\11a447f29e81309cc61a9ed442d9a94b\\tganzhorn-fastify-modular-0.1.5.tgz","_integrity":"sha512-lG6oQEAkp4wwA+/zACR2JLMkDk2x3vlpuij2wAVnvXn59SPDaPmN5asMNKwjw9TCnvT1gqyjPazEicPm0/UeyA==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.5_1751873439838_0.9837461501942377","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@tganzhorn/fastify-modular","version":"0.1.6","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.6","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"53fc6d31dcb4a9118afea827da5136e5f47d9cdb","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.6.tgz","fileCount":9,"integrity":"sha512-sQThX0dcZ0XLMypheRGzpbeatQvlJxyKvj016mbc3+B1yLtpCwHZ41hgGxUnkRV+5uSRKafnY/FjRztTd9nhyg==","signatures":[{"sig":"MEYCIQCUi1R+mfqYkHygxPzvl5FS+8UBnDPoVnbZ1z1CLUdJ1QIhAKeaeWqhSYlsPZwEj2R7wtsFcBc+IenyqG1iYPZz1Vln","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90817},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.6.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\1c232f2fa78653767a8781e42d6b2619\\tganzhorn-fastify-modular-0.1.6.tgz","_integrity":"sha512-sQThX0dcZ0XLMypheRGzpbeatQvlJxyKvj016mbc3+B1yLtpCwHZ41hgGxUnkRV+5uSRKafnY/FjRztTd9nhyg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.6_1751876455184_0.04644301000823026","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@tganzhorn/fastify-modular","version":"0.1.7","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.7","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"e98dda672eb14f99b740646f818af7fc14cc5349","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.7.tgz","fileCount":9,"integrity":"sha512-OlQ4MtPBcjFoiRHcw8baxGsapiT3ffuHj6TlGpem49MVse/ofuisEx+wfVCFXwIr5kjjG51kE0oO9ELJNxWcAQ==","signatures":[{"sig":"MEYCIQDBLzzvV0eHEe6IdeZ5FwdvAVltBig4VPXCWiuGY3uNQwIhAJK/C/EKuouQy0SkDvqY6BBWc3u0eJ/pe5Q9QY7UrqZ4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91825},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.7.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\bf6a701e1957ef8bae7d24f77f0a66ba\\tganzhorn-fastify-modular-0.1.7.tgz","_integrity":"sha512-OlQ4MtPBcjFoiRHcw8baxGsapiT3ffuHj6TlGpem49MVse/ofuisEx+wfVCFXwIr5kjjG51kE0oO9ELJNxWcAQ==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.7_1751876615674_0.3762965853868918","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@tganzhorn/fastify-modular","version":"0.1.8","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.8","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"c70eb5b9e2f22c3d4965a9f93b954b33aaef3d07","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.8.tgz","fileCount":9,"integrity":"sha512-e/qekqlmq5Pjs5C4c+ovPcfk1Ak6ezG/DHIiwQZgS7IxTyKoN+WTSiusgnM65msGctlaTyBlQaUBmNVJEzvi2A==","signatures":[{"sig":"MEQCIBrGH58baPn8GvsEZhoQPUz4Da54yFIvevtrjgx8f49tAiALSd+HdfJRjSu2pOgBF89EYETfWzMOL7INuzhO2qkBxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92240},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.8.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup src/index.ts --dts","generate":"plop --plopfile=./dist/templates/plopfile.js"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\0cec70b97382f9f6ddc85c538c9c267d\\tganzhorn-fastify-modular-0.1.8.tgz","_integrity":"sha512-e/qekqlmq5Pjs5C4c+ovPcfk1Ak6ezG/DHIiwQZgS7IxTyKoN+WTSiusgnM65msGctlaTyBlQaUBmNVJEzvi2A==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.8_1751878165405_0.4195012704978329","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@tganzhorn/fastify-modular","version":"0.1.10","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.10","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"12808f1a4f1d3e6ef09499e7cc4a60673f7a19f5","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.10.tgz","fileCount":9,"integrity":"sha512-bC5KXa/V2wOCmqTWlHb4gBSca1XRu1G6meH1WoRgghaEV2GBY7c2TFZoQACs21d3OGzpPVymVG8pefpiYt1Y3A==","signatures":[{"sig":"MEYCIQCx6dCDGjFAl3MKOba4PRkaQPBtiqWe3bpwqVmVY+u8VgIhAIvOjPRfsJ358CVlzv1melDd2VXxPVCiVJ4uqlsUes4R","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92954},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.10.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_npmUser":{"name":"tganzhorn","actor":{"name":"tganzhorn","type":"user","email":"tganzhorn@gmail.com"},"email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\f83fa206df77fdb1968f31c49b04db5d\\tganzhorn-fastify-modular-0.1.10.tgz","_integrity":"sha512-bC5KXa/V2wOCmqTWlHb4gBSca1XRu1G6meH1WoRgghaEV2GBY7c2TFZoQACs21d3OGzpPVymVG8pefpiYt1Y3A==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.10_1751962856243_0.2622118498495516","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@tganzhorn/fastify-modular","version":"0.1.11","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.11","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"5e5321f9d51d2ef7b968d5e84028ed7188995753","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.11.tgz","fileCount":9,"integrity":"sha512-nN3EfWpkwkbkgwbM0qyzc/FREhplY56Rh5TGEEuu/Othz9j/Timz7R8xbmKQmeqzdS2jhyrPVwp1WQt58roBrQ==","signatures":[{"sig":"MEQCIBAQLuHRECr3ZbyXlPy1iHA37CsI3XjO+ystEm0fN+pSAiB3Hqap2gxQl2QhV2JYpFFbnz2/dgi6yuUidPw6bADWJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107696},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.11.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_npmUser":{"name":"tganzhorn","email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\c4ba526534c0e45b8e72fb6b28d37d75\\tganzhorn-fastify-modular-0.1.11.tgz","_integrity":"sha512-nN3EfWpkwkbkgwbM0qyzc/FREhplY56Rh5TGEEuu/Othz9j/Timz7R8xbmKQmeqzdS2jhyrPVwp1WQt58roBrQ==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.37"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.11_1752229204093_0.8422479815340462","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@tganzhorn/fastify-modular","version":"0.1.12","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.12","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"85e5f879edff438c94fe7b12fe67661778fddcb5","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.12.tgz","fileCount":9,"integrity":"sha512-tqlUTwOKHprd7TuafRBuSpQsctI41vyWyKJSix3agCIixI9lWAluM+M0XrN7Hcdb6z1qDNG+EymOmv1tRYfk2A==","signatures":[{"sig":"MEYCIQCPMFGi5sYc2AZLXGQb355809pTM6TsmMmiAgbCPBIx/gIhANbZkpsRTGzr1MVPPLaadzdDIA62T5zHCitTX5J4wVJS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109118},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.12.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_npmUser":{"name":"tganzhorn","email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\6a61a7ab5bff9caa82e29c67f7612c25\\tganzhorn-fastify-modular-0.1.12.tgz","_integrity":"sha512-tqlUTwOKHprd7TuafRBuSpQsctI41vyWyKJSix3agCIixI9lWAluM+M0XrN7Hcdb6z1qDNG+EymOmv1tRYfk2A==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.37"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.12_1752234638911_0.0611235300868227","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@tganzhorn/fastify-modular","version":"0.1.13","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.13","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"06f297eb112f8e6d07017e2a0e92d582c1165a87","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.13.tgz","fileCount":9,"integrity":"sha512-rWKqZLCQfnE3crVqqY/AU/xduEbyir1xh5HUbyq+9lM1+CLI7KvWEPMdSH9552biH3egV52wV7TCm+H1uPwPEw==","signatures":[{"sig":"MEUCIQCJkNmCTZZw6KzGGpmTcS05hVtEtqGnQCIJC+5q8f+p0gIgPpA1h5nkG6UGk1FGJsNyNkku4LDAcKdXXY6K75AiUbQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109123},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.13.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_npmUser":{"name":"tganzhorn","email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\59da4bb0da501a7f771e0484b0398c06\\tganzhorn-fastify-modular-0.1.13.tgz","_integrity":"sha512-rWKqZLCQfnE3crVqqY/AU/xduEbyir1xh5HUbyq+9lM1+CLI7KvWEPMdSH9552biH3egV52wV7TCm+H1uPwPEw==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.37"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.13_1752235370349_0.569747196892249","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@tganzhorn/fastify-modular","version":"0.1.14","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.14","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"e8fd55ccd7a71af82e0cc646bd3dd2b18681fe68","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.14.tgz","fileCount":9,"integrity":"sha512-2NdNiv2mFKQUvQJO+pbWhbNGxgkpXjQJHPKgIpG3lz9hEhz69NkJFnscoC7V9MSqpFBezMcZcv0Ups8mrVRrOg==","signatures":[{"sig":"MEUCIQDL+BfdwZuLyVIkJ4cY38v3O69qCgnRXJU3R9YBOdwa3AIgUchbJ8wgh3lWkwjgqp0rQfP2nmgLiQVBDKtG7q3H6Ug=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110163},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.14.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_npmUser":{"name":"tganzhorn","email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\6dd5c467fa0a54530f7d1669179ef15e\\tganzhorn-fastify-modular-0.1.14.tgz","_integrity":"sha512-2NdNiv2mFKQUvQJO+pbWhbNGxgkpXjQJHPKgIpG3lz9hEhz69NkJFnscoC7V9MSqpFBezMcZcv0Ups8mrVRrOg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.37"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.14_1752236077259_0.8644418785269286","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@tganzhorn/fastify-modular","version":"0.1.15","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","_id":"@tganzhorn/fastify-modular@0.1.15","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"bin":{"fastify-modular":"dist/templates/generate.js"},"dist":{"shasum":"b480dfda97bcd174627e50f2952ebdff37b957da","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.15.tgz","fileCount":9,"integrity":"sha512-UGqFIagLGgGd0UiDyighpW60LldrNxPO82lSJi5INfYUHOviOnwvfuOON2HqqznWh+n+E1rNq7UgpXUMC6/kHg==","signatures":[{"sig":"MEQCIFnJwqB54y7kpw+54ia45tgfKkHhfBdd97LtwJnv/rtuAiAq4zLl2bGcyseOJrpVCFJxO4L1DJhiuGDfvso2lQR75A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110331},"main":"dist/index.js","type":"module","_from":"file:tganzhorn-fastify-modular-0.1.15.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","build":"tsup","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_npmUser":{"name":"tganzhorn","email":"tganzhorn@gmail.com"},"_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\25e550386a017782775f9b4ce97f42d2\\tganzhorn-fastify-modular-0.1.15.tgz","_integrity":"sha512-UGqFIagLGgGd0UiDyighpW60LldrNxPO82lSJi5INfYUHOviOnwvfuOON2HqqznWh+n+E1rNq7UgpXUMC6/kHg==","repository":{"url":"git+https://github.com/tganzhorn/fastify-opinionated.git","type":"git"},"_npmVersion":"10.7.0","description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"bullmq":"^5.56.1","commander":"^14.0.0","handlebars":"^4.7.8","cache-manager":"^7.0.1","reflect-metadata":"^0.2.2","@sinclair/typebox":"^0.34.37"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","tsup":"^8.5.0","fastify":"^5.4.0","@swc/cli":"^0.7.7","@swc/core":"^1.12.1","typescript":"^5.8.3","@types/node":"^24.0.3","@swc/helpers":"^0.5.17"},"_npmOperationalInternal":{"tmp":"tmp/fastify-modular_0.1.15_1752239171188_0.14368904757972456","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@tganzhorn/fastify-modular","version":"0.1.16","repository":{"type":"git","url":"git+https://github.com/tganzhorn/fastify-opinionated.git"},"bin":{"fastify-modular":"dist/templates/generate.js"},"description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","main":"dist/index.js","types":"dist/index.d.ts","type":"module","keywords":["fastify","modular","controllers","services"],"author":{"name":"Tobias Ganzhorn"},"license":"MIT","devDependencies":{"@swc/cli":"^0.7.7","@swc/core":"^1.12.1","@swc/helpers":"^0.5.17","@types/node":"^24.0.3","fastify":"^5.4.0","tsup":"^8.5.0","tsx":"^4.20.3","typescript":"^5.8.3"},"dependencies":{"@sinclair/typebox":"^0.34.37","bullmq":"^5.56.1","cache-manager":"^7.0.1","commander":"^14.0.0","handlebars":"^4.7.8","reflect-metadata":"^0.2.2"},"scripts":{"build":"tsup","dev":"tsx src/main.ts","test":"npx swc tests -d . && node --test","generate":"plop --plopfile=./dist/templates/plopfile.js","prepublish":"tsup"},"_id":"@tganzhorn/fastify-modular@0.1.16","bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","_integrity":"sha512-GuQqSARJLQWWFzrgdWnW5nQncQaFHyuwoHgtMFaElI3a2kDQBsOQdjvJOZMX0S9syKRk2RjBW/87W0nNgjM6xQ==","_resolved":"C:\\Users\\tga\\AppData\\Local\\Temp\\5e8bcd6041274329ccab081ce149bea6\\tganzhorn-fastify-modular-0.1.16.tgz","_from":"file:tganzhorn-fastify-modular-0.1.16.tgz","_nodeVersion":"20.15.1","_npmVersion":"10.7.0","dist":{"integrity":"sha512-GuQqSARJLQWWFzrgdWnW5nQncQaFHyuwoHgtMFaElI3a2kDQBsOQdjvJOZMX0S9syKRk2RjBW/87W0nNgjM6xQ==","shasum":"0a3a93b8960abe1c0e61cad41f40a6b50a3326ab","tarball":"https://registry.npmjs.org/@tganzhorn/fastify-modular/-/fastify-modular-0.1.16.tgz","fileCount":9,"unpackedSize":110340,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAVgLXVsqANY6ur3c/0dW9g2ZpR1eRzrxzE1ug/JywzdAiACubkstqeioe6vSavZ2RTAy2eEOlczMpKy70tO9GBqig=="}]},"_npmUser":{"name":"tganzhorn","email":"tganzhorn@gmail.com"},"directories":{},"maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fastify-modular_0.1.16_1752239574135_0.5377962651122001"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-19T17:19:44.204Z","modified":"2025-07-11T13:12:54.547Z","0.0.1":"2025-06-19T17:19:44.523Z","0.0.2":"2025-06-19T17:25:56.709Z","0.0.3":"2025-06-19T18:40:56.629Z","0.0.4":"2025-06-20T10:00:02.721Z","0.0.5":"2025-06-20T10:02:37.591Z","0.0.6":"2025-06-20T16:32:13.328Z","0.0.7":"2025-06-23T07:11:19.427Z","0.0.8":"2025-06-23T07:29:33.909Z","0.0.9":"2025-06-23T07:34:53.476Z","0.0.10":"2025-06-23T12:06:25.131Z","0.0.11":"2025-06-23T12:14:56.572Z","0.0.12":"2025-06-23T14:42:33.295Z","0.0.13":"2025-06-23T14:46:16.356Z","0.0.14":"2025-06-23T14:47:39.398Z","0.0.15":"2025-06-24T06:15:58.855Z","0.0.16":"2025-06-24T08:15:13.378Z","0.1.0":"2025-07-05T10:13:58.836Z","0.1.1":"2025-07-05T12:50:49.373Z","0.1.2":"2025-07-05T12:53:12.162Z","0.1.3":"2025-07-07T07:09:11.816Z","0.1.4":"2025-07-07T07:26:43.525Z","0.1.5":"2025-07-07T07:30:40.009Z","0.1.6":"2025-07-07T08:20:55.350Z","0.1.7":"2025-07-07T08:23:35.836Z","0.1.8":"2025-07-07T08:49:25.568Z","0.1.10":"2025-07-08T08:20:56.535Z","0.1.11":"2025-07-11T10:20:04.310Z","0.1.12":"2025-07-11T11:50:39.066Z","0.1.13":"2025-07-11T12:02:50.564Z","0.1.14":"2025-07-11T12:14:37.441Z","0.1.15":"2025-07-11T13:06:11.413Z","0.1.16":"2025-07-11T13:12:54.319Z"},"bugs":{"url":"https://github.com/tganzhorn/fastify-opinionated/issues"},"author":{"name":"Tobias Ganzhorn"},"license":"MIT","homepage":"https://github.com/tganzhorn/fastify-opinionated#readme","keywords":["fastify","modular","controllers","services"],"repository":{"type":"git","url":"git+https://github.com/tganzhorn/fastify-opinionated.git"},"description":"Fastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.","maintainers":[{"name":"tganzhorn","email":"tganzhorn@gmail.com"}],"readme":"# 📦 Fastify Modular\r\n\r\nFastify Modular is a lightweight architectural layer for Fastify that introduces a clean, structured way to organize applications using controllers and services — inspired by frameworks like NestJS, but without the overhead.\r\n\r\nIt enables developers to build scalable and testable applications by separating responsibilities:\r\n\r\nControllers handle routing and HTTP logic.\r\n\r\nServices encapsulate business logic and reusable operations.\r\n\r\n---\r\n\r\n## ✨ Features\r\n\r\n- ✅ HTTP method decorators: `@Get`, `@Post`, `@Put`, `@Patch`, `@Delete`, `@All`\r\n- 🧠 Dependency Injection via `@Service`\r\n- 🧵 Per-request scoped services via `RequestStore<T>`\r\n- 🧹 Parameter decorators: `@Body`, `@Query`, `@Parameter`, `@Headers`, etc.\r\n- 📜 Schema validation with `@Schema`\r\n- 🔄 Lifecycle hooks with `OnServiceInit`\r\n- ⏱️ Background workers via `@JobScheduler` + `@Worker`\r\n- 📱 (Planned) SSE support via `@Sse`\r\n- ⚡ Easy controller registration\r\n\r\n---\r\n\r\n## 🚀 Getting Started\r\n\r\n### 1. Install\r\n\r\n```bash\r\nnpm install @tganzhorn/fastify-modular\r\n```\r\n\r\n---\r\n\r\n### 2. Define a Service\r\n\r\n```ts\r\nimport { Service } from \"@tganzhorn/fastify-modular\";\r\n\r\n@Service([])\r\nclass CounterService {\r\n  private counter = 0;\r\n  increment() {\r\n    return ++this.counter;\r\n  }\r\n}\r\n```\r\n\r\n#### Per-request scoped service:\r\n\r\n```ts\r\nimport { Service, RequestStore } from \"@tganzhorn/fastify-modular\";\r\n\r\n@Service([])\r\nclass RequestScopedService extends RequestStore<{ counter: number }> {\r\n  constructor() {\r\n    super({ counter: 0 });\r\n  }\r\n\r\n  increment() {\r\n    return ++this.requestStore.counter;\r\n  }\r\n}\r\n```\r\n\r\n---\r\n\r\n### 3. Define a Controller\r\n\r\n```ts\r\nimport {\r\n  Controller,\r\n  Get,\r\n  Post,\r\n  Body,\r\n  Parameter,\r\n} from \"@tganzhorn/fastify-modular\";\r\n\r\n@Controller(\"/counter\", [CounterService])\r\nclass CounterController {\r\n  constructor(private counterService: CounterService) {}\r\n\r\n  @Get(\"/increment\")\r\n  increment() {\r\n    return this.counterService.increment();\r\n  }\r\n\r\n  @Post(\"/echo\")\r\n  echo(@Body() body: any) {\r\n    return body;\r\n  }\r\n\r\n  @Get(\"/params/:id\")\r\n  getById(@Parameter(\"id\") id: string) {\r\n    return id;\r\n  }\r\n}\r\n```\r\n\r\n---\r\n\r\n### 4. Register Controllers\r\n\r\n```ts\r\nimport Fastify from \"fastify\";\r\nimport { registerControllers } from \"@tganzhorn/fastify-modular\";\r\n\r\nconst app = Fastify();\r\n\r\nawait registerControllers(app, {\r\n  controllers: [CounterController],\r\n  bullMqConnection: { host: \"localhost\", port: 6379 },\r\n});\r\n\r\nawait app.listen({ port: 3000 });\r\n```\r\n\r\n---\r\n\r\n## 📌 Decorators\r\n\r\n### 🔧 Route Handlers\r\n\r\n| Decorator       | Description            |\r\n| --------------- | ---------------------- |\r\n| `@Get(path)`    | Handles HTTP GET       |\r\n| `@Post(path)`   | Handles HTTP POST      |\r\n| `@Put(path)`    | Handles HTTP PUT       |\r\n| `@Patch(path)`  | Handles HTTP PATCH     |\r\n| `@Delete(path)` | Handles HTTP DELETE    |\r\n| `@All(path)`    | Handles any method     |\r\n| `@Sse(path)`    | Handles HTTP GET (SSE) |\r\n\r\n---\r\n\r\n### 📅 Parameter Injection\r\n\r\n| Decorator        | Injects From        |\r\n| ---------------- | ------------------- |\r\n| `@Body()`        | Request body        |\r\n| `@Headers()`     | Request headers     |\r\n| `@Parameter()`   | URL path parameters |\r\n| `@Query()`       | Query string        |\r\n| `@Req()`         | Raw FastifyRequest  |\r\n| `@Rep()`         | Raw FastifyReply    |\r\n| `@Raw()`         | `{ req, res }` pair |\r\n| `@Ctx()`         | Context data        |\r\n| `@Job()`         | BullMq job          |\r\n| `@InjectQueue()` | BullMq queue        |\r\n\r\n---\r\n\r\n### 📜 Schema Validation\r\n\r\n```ts\r\n@Schema({\r\n  body: {\r\n    type: \"object\",\r\n    properties: {\r\n      test: { type: \"string\" },\r\n    },\r\n    required: [\"test\"],\r\n  },\r\n})\r\n@Post(\"/validate\")\r\nvalidate(@Body() body: { test: string }) {\r\n  return body;\r\n}\r\n```\r\n\r\n---\r\n\r\n## ⚙️ Service Lifecycle\r\n\r\nImplement `OnServiceInit` for async setup logic:\r\n\r\n```ts\r\nimport { OnServiceInit } from \"@tganzhorn/fastify-modular\";\r\n\r\nclass InitService implements OnServiceInit {\r\n  initialized = false;\r\n\r\n  async onServiceInit() {\r\n    await someAsyncSetup();\r\n    this.initialized = true;\r\n  }\r\n}\r\n```\r\n\r\n> [!CAUTION]\r\n> onServiceInit is never awaited so don't except it to be initialized immediately!\r\n\r\n---\r\n\r\n## ⏱️ Background Jobs\r\n\r\n```ts\r\nclass WorkerController {\r\n  @JobScheduler(\"test-scheduler\", { every: 1000 }) // every 1s\r\n  @Worker(\"test\")\r\n  async runJob() {\r\n    // background task logic\r\n  }\r\n}\r\n```\r\n\r\nRequires BullMQ and a Redis connection configured via `registerControllers`.\r\n\r\n---\r\n\r\n## 📦 API\r\n\r\n### `registerControllers(fastify, options)`\r\n\r\nRegisters all provided controllers and their workers.\r\n\r\n#### Options:\r\n\r\n- `controllers: Class[]` – list of controllers to register\r\n- `bullMqConnection: { host: string; port: number }` – Redis config for BullMQ\r\n\r\n---\r\n\r\n## Code generation\r\n\r\n### Usage\r\n\r\n```bash\r\nfastify-modular create <component> <name>\r\n```\r\n\r\n> - \\<component\\>: Type of component to create. Must be either service or controller.\r\n> - \\<name\\>: The name of the component (e.g., user, auth).\r\n\r\nExample:\r\n\r\n```bash\r\nfastify-modular create controller user\r\nfastify-modular create service auth\r\n```\r\n\r\nThis will generate files like:\r\n\r\nsrc/user/user.controller.ts\r\n\r\nsrc/auth/auth.service.ts\r\n\r\n### Configuration\r\n\r\nYou can customize the output folder and folder structure by creating a .fastify-modular.rc.json file in your project root:\r\n\r\n```json\r\n{\r\n  \"$schema\": \"https://raw.githubusercontent.com/tganzhorn/fastify-opinionated/refs/heads/main/fastify-modular.rc.schema.json\",\r\n  \"root\": \"/src\",\r\n  \"createSubFolders\": true\r\n}\r\n```\r\n\r\n---\r\n\r\n## 📄 License\r\n\r\nMIT – feel free to use, contribute, or fork!\r\n\r\n---\r\n","readmeFilename":"README.md"}