{"_id":"@absolunet/ioc-app","_rev":"28-0f18095848c7650130b5562b7a1c029f","name":"@absolunet/ioc-app","dist-tags":{"latest":"0.9.0","next":"1.0.0-rc.2"},"versions":{"0.3.0":{"name":"@absolunet/ioc-app","version":"0.3.0","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards","test:feature":"node bin/app test --feature","test:unit":"node bin/app test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.8","babel-plugin-transform-es2015-modules-commonjs":"6.26.2","jest":"24.1.0"},"dependencies":{"@absolunet/ioc":"^0.3.0","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-720211ofMOMi2TcPl/absolunet-ioc-app-0.3.0.tgz","_id":"@absolunet/ioc-app@0.3.0","_nodeVersion":"12.5.0","_npmVersion":"6.10.0","dist":{"integrity":"sha512-6h31uoy02peudGKMoO8amoCRHRZydWbGbeFIquU3X6dBbFvzqdXxtq8skAsYq3EdfudyOPK0Pm1J6zymbDgdkA==","shasum":"9aea1a3a7840dbb9c4c990a747a39c0a676fffac","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.3.0.tgz","fileCount":27,"unpackedSize":120438,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJ0AaCRA9TVsSAnZWagAALLwP/00oFv26/5QSE9hpnjE0\nSD0WRQf6t/5tRW4PFrbsA4PjAkRWw3RkuVTrCYnuw79Cqkc3emBDCgV94y+b\n6boMHGUn5nVS0YUtJTIJlld2kuUU+j31S3pKGepMfIpUaY6h/mbEj1BiXkRk\nqPkU5avn1tn4WTGfjnb1BHHap0kiWgQ5HMEIhGM2GbvDKeWdIit8LjKOgIFt\ny9g7TUsfE40SoEYn6U1++D536naGnBwIY/DdG+mh3INFzI+/3O++QVgtDxDP\nijGxpwjDQxFDXF4pQHfbrdtjmpitT8Lj7sLSO2LpWYLybJ2j4zUI7Tchxej/\noK+9mpVW6zdzE8RP2943sgaWwANnBR+gyE5YKM1G/3HWZJRSXbBNJ/eaJPLh\n8URHB3iIY5/hjzuX9KQHpIBCF9dgxMHC2LTKQgsiw+kBf+UnuOylUoG7dxxK\nA9VpLkSJ8/eS8MmawXkev3I0e4wDTz6N/YAteV2o1VjQt0hyUnYODyFQfh+w\nhR713Yq5mBZl76Jh4esS7vCAwrmueTWHThyEJSeNuIql1DcGZEvkcS748SUB\nsYyIgkiy+VX8QlLrQrvhf09p9oei/wRaFYBVDppmI56WrSTyaaZj1arhSV3d\njTgaDltltz8lyZ9FBRfh6k5kFzOrTI/yXjAAuEsPig2gWPah2nU8WzqSHMoo\nWw4q\r\n=tKjo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXpI8FNoOm9LbbByrUayRQTo71u420IkWA13kkn7l/iQIhAPoWhHLRDfDs0G2tTPP82n95yqkgM4SSmx/h1Dn+EJvU"}]},"maintainers":[{"name":"tparent-abso","email":"tparent@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"absolunetdev","email":"dev@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.3.0_1562853401386_0.17662986270970782"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.3.1":{"name":"@absolunet/ioc-app","version":"0.3.1","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards","test:feature":"node bin/app test --feature","test:unit":"node bin/app test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.8","babel-plugin-transform-es2015-modules-commonjs":"6.26.2","jest":"24.1.0"},"dependencies":{"@absolunet/ioc":"^0.3.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-78970BZ3fhOh8EDIQ/absolunet-ioc-app-0.3.1.tgz","_id":"@absolunet/ioc-app@0.3.1","_nodeVersion":"12.5.0","_npmVersion":"6.10.0","dist":{"integrity":"sha512-yXNwXMeYdy94G7mwv3CwukIBCjP75qWU+PlXEm9Jqkblqmt2etb28PPU1PtXvht+ZIrTAHziOyrFPExC5cHorA==","shasum":"268eb309d6cb132d6f7ed0939bcdd54197140452","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.3.1.tgz","fileCount":27,"unpackedSize":120438,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJ0pyCRA9TVsSAnZWagAANwgP/375tXmK/7OrBPF33U52\nGhnKzvce4cCtb2XiiOHbl1820zjBNIChswcE9o2iaOEnn2W20gNyNpYgJ2uz\nocfWa9HUUa2dPcW1R3fVuB0zubenLMe31sbvRg5xrbYlfrhNBaMKlbxZuyEA\n7mDV7FKHLoFXUgy6TvgASei8eTRz6Km5YwZf4d825EnFGFiu3X+s3f0/Y0PY\nP0I4NxJIuWJIGHpntiBhm/YjCnDw38kkDoKBpX/M3L6t4YGwnmfWAx/+sK+m\n/LMFkxyPIn2R1k5R38UnyfmeopB13DdI9VsOj/gM5JwoYCNzy1J58YAw3w8H\n4ypMz/ycN+UKeC0+Uh3ihUe/3I7i337W098tvUvlv3k5qfO6xfpvxNDm/xXg\ndkMOdLcGCAX+UO/VO0QfFZOAeKZSrBIF5Gxptz330w3VcHSXO26fkddi8OSa\n5Z5dVtkDTeVlWsGCNFY4R15wB7M20/52E9zCP23CW0+8f49DoH1zIi98ZjFF\nKjIzKm91c9/J+ZsBGWdvmrbnCqUONtdUpvz8FJeD84Xlo+cOpNHHsZFE1e/K\n0UY/5mngRtJ0ivbE1/e8OlwIB+S7R1F4tyjoJt/tb4u9E8FY/ujYdLo+/S9z\n7KH+KU3395B+FI3+2sPSWNu4TTGJnCLBTrXiUjtiy75NHMCrmR28eKWCzKEX\n/6gy\r\n=I8Hi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFfV8Keh3HgGX47ISbatbtp+xTAaqO2rX3b5fEIt7U6qAiA2R8UpeuuKnQ1+GdDlVpgsu1+zZK/ZcuHKgMQthQtuKA=="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.3.1_1562856049341_0.8325445278410022"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.4.1":{"name":"@absolunet/ioc-app","version":"0.4.1","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards","test:feature":"node bin/app test --feature","test:unit":"node bin/app test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.8","babel-plugin-transform-es2015-modules-commonjs":"6.26.2","jest":"24.8.0"},"dependencies":{"@absolunet/ioc":"^0.4.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-47458yffHpg27Rko7/absolunet-ioc-app-0.4.1.tgz","_id":"@absolunet/ioc-app@0.4.1","_nodeVersion":"12.5.0","_npmVersion":"6.10.0","dist":{"integrity":"sha512-KgZacApbukYaK9U0xk1lgZu6kbzV+N1Ljb+1N65nN7zc8QdKtPbXqdVbF3jN5BUu+R/tmAx5u7C3nurmmrFT/g==","shasum":"bc5149e2cea977b133c68f9e91f88086b0d700f2","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.4.1.tgz","fileCount":52,"unpackedSize":248231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdNFVsCRA9TVsSAnZWagAAT5oQAJOFDNlyeAEKndu3/nQc\nFEyQb8pMOVvKrGMdJqZi5drAspy96Kcc8fhwbBaw6QtDb2MJ2i7JWixWjfTv\nmcc8SERSqHLIz5UMcJDkCaaXMz7sWfsGLUEfP7LmP7y0+iV3sbkn5i14OELr\nNucb1jC74m3zGgtBXPbiik9Zi+xKjle5GPhQL9V9QOV0rM1Ceb4ez+vTCFxp\nVccQHD+yrhD6BKAtOn/p5ahA5TSOBHRehZNR1aZp2uvVGfn9yhporaLjh2LR\n5BTsouPWn2oL6wtuefhUn1ykbxv1XGUvz2Y180/YM3xMNIzu+QOfPIqF6RfU\nZSONzrAqJIKsiAuru7VDWyZk2p9otYGEQAf6ewSZoCXHpamFTmOyczs5pNSl\nrfdO8tUbUCR2mSb5NXWQ/JQMZlE87ejQdmSgh3x9TDXo0U2rrRfMPr4qLZ5Z\nxbzH59INo/KLDKFrTJxL28h2rS95ParUzbblBPnnv6IxJXEzB8pEoqWOqdZL\n44xByAMojaGJLJq9iRzgPB5MnnoeuxbT1BzPacAJvyk8xqFxNPPVzBX1ISc0\nCpW9b6AMxHrYE8y11B/Jht9VrLvFmkBl5C6MwoZmxsl8pud1ucEoHDoJLMzC\nrKmDkO/6st9ryIsHzUbivySRuWDNxpoFi1gEalmBK3dxHab7HFQULh7z+1OJ\nS3hE\r\n=eoh/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4cYHV2r4rOzEplUYDStPfFmXiZVuHLQjYqVtL3QbKugIhAKuC+KaohmEqA1kaNtSDtc1LO6NzGTL+H6tAcu91JwYF"}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.4.1_1563710827314_0.38625808999372335"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.4.2":{"name":"@absolunet/ioc-app","version":"0.4.2","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards","test:feature":"node bin/app test --feature","test:unit":"node bin/app test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.8","babel-plugin-transform-es2015-modules-commonjs":"6.26.2","jest":"24.8.0"},"dependencies":{"@absolunet/ioc":"^0.4.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-477031GvqGokE9nmF/absolunet-ioc-app-0.4.2.tgz","_id":"@absolunet/ioc-app@0.4.2","_nodeVersion":"12.5.0","_npmVersion":"6.10.0","dist":{"integrity":"sha512-nAtUH64EQYqAnPqN4IfZ4373SH++By/zAyPtzzu821Kyi0RIGPlJjEdI9oXWKEOBUiO/i+JZ8nAOVcOUb29d0g==","shasum":"d65c5b5537b8d59220b50ff1be59de5717949891","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.4.2.tgz","fileCount":27,"unpackedSize":119609,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdNFXhCRA9TVsSAnZWagAAEX4P/iVMeX7d384m3LktgeMc\nAFeyCmuymtPCjIFO7gw7MQCw+HJrLf1ro81ooPbH9Wkfsy9CAVcOFkX8U0Px\n3jqTRZAf10TBMTnaVyFIimdx2sgawf+QlXxl2vAaORRYXo6V0VXJGl+qj5YQ\nIT/gh6o28ZpMg+bFxfzTO5gDHdvvUmWxugbrkif+/1FEtUr2yT3XhndRMpPW\nmPnXxcdvYjtqcnNNBddX34PW5fzXTF4AAILE+diLuJVRJ77/TJlvzFY9wSIo\nXgzapZgvY5ri3uzlbYNdutRnLulF89zMhWY/9ctqs5tR4Kz3KaQZfQ8wl7ws\nZOAeU2ucrvcsebB6X7SiGlscaGfLbMDarpagCPkphwo5YKCKKFL+6C8fRz0F\nPdKXH+f599U9vT8ivyFkCMNs2pbYXuGDie62mqmPAKTZcaFTeY0Yn4/I5kzZ\nPEfDkzXLDJAp/QWUEY/in6RKLa0rYu+DEyR3mWR0yz+wYwsOYbaEt7zZ+5Fl\nWij4Ow/Pjz8cPN6wUAv6Xza2M6CKRULp81VHLXLPsqHEDgVeCieP/SQ+1hI7\niy1XhcyzqB3ko3a2r6fQt9g+hpBd0HGeessVUFMk5uMzjWwNbiQVPHhsq/6T\nr2RKOAJs3ffUsI2cAhkp9xWmkBAPX9lcmgSo6hSG6bF48fnS6MhOwVtDDOLR\n8e53\r\n=iAg6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2CaY0FJLyVlfWiCcguMuWw0+UcV5XIe8r8pkzwNFmrgIgc1BfyxOzYcQLuef1+roN6PD7ioxuXalp4xZwL8VX31Q="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.4.2_1563710944224_0.6002287162305209"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.6.1":{"name":"@absolunet/ioc-app","version":"0.6.1","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards","test:feature":"node ioc test --feature","test:unit":"node ioc test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.8","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"^0.6.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-39168GSb85UNOQgMx/absolunet-ioc-app-0.6.1.tgz","_id":"@absolunet/ioc-app@0.6.1","_nodeVersion":"12.5.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-96E4TXgzJvGlnAaBCeHQY4K0yTyHjuxKT9fpGeZXYhbu19giDkqtq3WVx7wpKqurAIzoNosgcZ/OJT7oF49VRg==","shasum":"3d087f094942d4d565f32565e3f49a114f454f7f","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.6.1.tgz","fileCount":34,"unpackedSize":120649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXVnKCRA9TVsSAnZWagAA2dcQAJjl/4n9xLqZEAldUpoX\nJF8llMlldQhEFBjFV9tK7PLPdKINRXfSCb7tsU+QwXf6lH6TtsckutzQPVEv\nBNIAT+OOGrT4U3q+hMMWvaD7eWSR6OpkKX/bn/qAT0zDX5qYjmKbfajxHn57\nwLNg12aZmysqzevubRHZVuKtRfL31KjPQe6bftgcA5aHbUCZ+Qlq+pQImai5\nRRetqcoBXakF3flAjXcwOlkt5Av1gofg6Sy8MDt0zanY7IezTz5ixkvlePY0\nBxJR5mxzilLT/MkD2SnY75nH90smrLspNYPg452EHP05yJHgF3i1wB66Ohh4\n+91g2F5hlKFy/Dr7+pIm9LzK556scpU4625vS5z0Q60EGFOtWKgE4ETC6cyl\nhFt89mfDtCbO/hZkOQDKFxrh6HGg9Q2G9A6zLc76t2MKI4Pv5f24lJet2gG6\npOnw3EEW7LqZDfRxIjv1F7QWJeSFrOF6ag+8TsvFhUSsMGmlBlTA+LCq5iGJ\nU05ByGHXjuem1CvU0WiDDyDmCk/ZlQDSF4wa3XmbHlXNgNsxtO+au0zfv1AH\nYDfUypmskLFMRKE0c+aMIKaWPUa/19WKtAt10SNAieem97ZUZHQ3HR7PlaiC\nKUea+961o0gdGBpn/zCKq1vY1zC8cN3Gombku/1+Q9s+oNPci4Iy6TwEvQWM\ndEB4\r\n=KB+r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0KgamQCFqc5/92XEcE4h807/yse/94bY1LkHZnOAmfAIhAIgGbkAoRqfvfRtizUiEb4nHlsKHLHkHZJIQSfRCrsX7"}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.6.1_1566398922091_0.9682009508653284"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.7.1":{"name":"@absolunet/ioc-app","version":"0.7.1","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards/index.js","test:feature":"node ioc test --feature","test:unit":"node ioc test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.9","ava":"^2.3.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"0.7.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-79736mJ0HpnzDeXsM/absolunet-ioc-app-0.7.1.tgz","_id":"@absolunet/ioc-app@0.7.1","_nodeVersion":"12.5.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-OKp8Z/0eu9IzvLTrL+khC1n+rppksFtAXZ0Xnsn06147ved+N8PjsJOFxh2glGphTXjqJ1pacEhyDe9Nw92vJg==","shasum":"4b494252491f7b8a4ea4f29e90f517232fe569c8","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.7.1.tgz","fileCount":33,"unpackedSize":120220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddr4qCRA9TVsSAnZWagAATMMQAIHDa+XKZcF51PeEGwRY\n5Rs2ubfhPiHmN1XiCqmITwKsTO6Vlm9cVky38K6gEktojn25shQEbQys/gEv\n2ECA82ZcdsKquJIVsSSXCEww7OjZmCwfXKxyARApx1KNME1nuAOpcP/A5Tk7\nHD29I0SA9n69W1qKVa445fb5AaOKIScBLw4uWYb2vOdAZf4kSLqtb+ugpsfb\nfxWNUWgGKNXy5WYcpG5GjpWN0oeS1ZlP1XKR0n+S2KEDC0VDxRKf4y45Zjhh\nOD8lXNhNi3sEMUYrT/2brXN2DOCzb93iCLPz3yeOrIiy34gn9h9rysH/c0xF\nodVsVZ8mzqAXoqF5/eJMGBwojgBayoWhKUpicsibryOhncWiKs8cVQGI5vZJ\nLymbU45JRLfLFeujAJlBjZfFfd87LwvVTjhLPIYgLhYtVNaM3LX7e/YnLYxf\nfJD/7yuMaowzvmGPfcz9JTru5g3IdtDhQ/nfYbQ1hD7BHEdZApIX7zrD578V\njuf9RC/veyLMs9eRvt5oXw2l5S9nJQj4uBVv5j0BEv4tZeWO05oSDUTzfGuT\nt5IatMreKrlVXt++9f3tM2PEN0E/1b3AY7gHvEYLILtThmfZ50ZCfrtgOY6a\no1+ElnnvXTFbo6ybYFGfePFB0W4F4Y8u6poEXSE8icYb8PzY5BWMmBUjYsk4\nzSQI\r\n=80Fj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAUpyXEJvl4DSG4lknpo71MyZ2C4t1+wFghPZcfwdDbVAiA8TD0gvgMxiJxhG+gDl/T2Apu76IvyTt7dn980HUwIKg=="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.7.1_1568063017915_0.7691235997439971"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.8.1":{"name":"@absolunet/ioc-app","version":"0.8.1","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards/index.js","test:feature":"node ioc test --feature","test:unit":"node ioc test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.9","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"^0.8.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-680467ZYdWQenvtRj/absolunet-ioc-app-0.8.1.tgz","_id":"@absolunet/ioc-app@0.8.1","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-ZC2TY1eIKsL+IUchnZ6UtVOmHcClH0F1eog8eooLgIxyzlQDzKYvC8HFavmll5bHZpiRd1uexPvUdmzE2UDEmw==","shasum":"51e5f34a2982c53d310160292d55d7b421a0727e","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.8.1.tgz","fileCount":37,"unpackedSize":121100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgD1vCRA9TVsSAnZWagAAssMP+QFzaxQzw+VGNjqTmNll\nblrfonPNosUP7wsAQBWN/vl5q+xIwCj8aEoPa1NQEQv6qdKp1Gds1rb0XyKC\nVns0hRh4jyD4BMPn2QxsgGyaWxgdrz7auAjDD3N156bpLiFO/+1lViUvV0m4\nV2HXrXdtciYA5ZhrJmEWFG0wslZOBcvnoT7YHzYngYCCMTo22KYPN63gKR35\nCJOtdaoeJsjPugUjD+li6BprCdA4ijqU2BoHL5vI/M+68R5ctw+FkgSYAHnL\nI4+RQgk2NAPDPZmmkxfbWr50aGGGX5ePPk9o97MICulAlt7i8SKCmHxwMAuD\nzsEPsJM9cmQk/f34n1fwT0BaUvyAJzE5RUvWEmo1bJvh4N8wro2Y0CoFFGP1\nTr1Jn4De1wJeo82AbCURQJbJ4VZ7JqGgBD77WmJineqNHyHBtxpBt74kz+GR\ns0VAjC34xkx6KdanC2GSCOzlspb+Vr9VQd2J6LoZAk4AxQFGOlCh+v3YFjKA\n2u8UlH075ZVT/AzPwSjS1Ht1Eo4PrFAHXDeY22X/WFqho7Kkab/1myd0a84u\n+kXhDFJKWFEP9WiZ/nvPi0I2zsCZS2hC2rstGKodtNjdtUPsNqHGlvCklqk+\ny0ZV6GKF6wDqay7lUya6Iomy/Mcw1JCg9Q4Jehf7z725v6m/Q9v36Kct87OY\n7sxB\r\n=4Z4q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKMYeQmJi2Lie4zefxe3MirPHbwldAc3ib7Vm0zQwBnwIhAIWQNPo/G3YKAbYQNfUolWhesg5RBIVOz7yidz1v5ZMw"}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.8.1_1568685422459_0.46137289325848285"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.8.3":{"name":"@absolunet/ioc-app","version":"0.8.3","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards/index.js","test:feature":"node ioc test --feature","test:unit":"node ioc test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.9","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"^0.8.3","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-886909pSp2oVGrjGV/absolunet-ioc-app-0.8.3.tgz","_id":"@absolunet/ioc-app@0.8.3","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-0i4i+jLMtiueiCLhVCvgDpXcc1i8VVURvFk9ckjzMrB9gQk3ZqzrMFe9V4E/6wFGZAFW2g/PLCnQqJtKiibQDw==","shasum":"fe36f2ed6136d44f8140465168175ec6188cdc66","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.8.3.tgz","fileCount":37,"unpackedSize":121099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgS0SCRA9TVsSAnZWagAAhw0P/22NXxXSej/L+vcUvE9h\nOR6ZsqDqsZiMU38nF/1GaxN4uBq6RuaGDWBfWJPp++5mbcIHmYGd5S7ChuR9\njrfOXphVJUv84hpVAjOL1DSJ/Z+AgOT6o7/nbKmMVFEjka3P/yVHybfisd8M\n8NhoPOhdyAC35KgnVrhJeI/4X3+l5FCsr6axwU+AyjclWDcnh76CUGhecUsA\nk9C/cGMqhO5xox5lSyq9Cyibj7EYZQfThQXv9t7YYb2fJ6qwwZ7PLE+bH/CI\ny4EFUfdXZb47auWkViJJtLA/nuZ8XWkgisBKHd0zdtftOW39KZNexub/22TH\nsBh7MpYIiO4tFu8RpdXewxE5XSsI4WxSFvBrRx8tIdVs/K94zGu5pZK+A9B5\nW2xkt5RCUNRYShAPermI+KA9WNFCG9oIlKCIQz7fWJZtNRgYHGWZap4s5gai\n2dk4cU5RZN6YRNhKt87TZzSKdprPU8gCo0U1bg0hP7ZPbBIalDe+H7oa/Y+U\nkCJ2WXWmktyrfGU6ryOMmpVzOqgMU64A76GUy6BZs1caC8d+I9G09BJYAoRh\n8YmBdpvwDhSjPUTa2cvlxLVepdWNOr/wk4CRAOJoAgkqfnaBeBLrTznpUoj3\njohbF8UxsqY3YJjoqP/EzOoJC2mPo+LG8eOHOpSZeFZhhP286qLfs+gB+Q9H\nLnBl\r\n=Vi7u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFoTaSCGcb5zSfZXIec7NfWQxq2gQGNK2TDQJBBlWbZoAiEAzQpOzJz4zZNi+AHbniKT/vPEIIpppTWv4SoyDhmlA1c="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.8.3_1568746769350_0.6805754058509637"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"0.9.0":{"name":"@absolunet/ioc-app","version":"0.9.0","description":"IoC","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.5.0"},"main":"index.js","scripts":{"test":"npm run test:standards && npm run test:feature && npm run test:unit","test:standards":"ava test/standards/index.js","test:feature":"node ioc test --feature","test:unit":"node ioc test --unit","installer":"node manager.js --task=installer","outdated":"node manager.js --task=outdated","build":"node manager.js --task=build","deploy":"node manager.js --task=deploy"},"devDependencies":{"@absolunet/manager":"^1.1.0","@absolunet/tester":"2.6.9","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"0.9.0","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-49868f7bkMUN3s4iE/absolunet-ioc-app-0.9.0.tgz","_id":"@absolunet/ioc-app@0.9.0","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-nNQiN5Xijtx1rFxKC6ZR2iTEGxUiwLZxcqzsNIArZ6XcJ8155vJ/vvCW3N/txLudBnoSzg6ZIA07WwGBxeFmaA==","shasum":"6b3ea8efcfcf90244ce1e2c4955ad409caedaea5","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-0.9.0.tgz","fileCount":38,"unpackedSize":121211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1vs7CRA9TVsSAnZWagAAoHMQAJupSDKii+jG3B3p5D3a\naG4cu8//hWB3nIDCOIlXdSlVvrLt0HEOGKgb4+xJZMr27/nmhA7TajCSIS/5\nCtFc4xKgxsmQ1uibm3Zf22O255OOBgF3LO1gbLnY6RgITWF8gvrFwMgKKl40\nUYEdEz1T9cDq0vFnka/5WeX5uYeejWg/bObLpfrbJXH8XRTeQg3pQrFN/YTw\nV7NZBd3uU1U1FUEHZv6e3fGJ5N5nm1e1m1pOw9ma2lWkWBimwZmoATLBRAt4\n6vIM3u6lkbN4yUevfG7lnjCkMK5/BjNWlKKD90RTHRHfBTqtFd6c/SicVnSf\nCdDSgxyPnCRbLXReupjlQrLBsdY+dglMUmXtOH6aPGMtm4F3qcA1FqJRFQE0\nZZbZwM3maJDQdzBzBJ0NrwzepWV7oftbI7IklXO57kMV6oJnnazGBAHpDqxg\nT+obfetNPrVynxzBTOflghGQKY+2JvkrurQlKSrmL7+EjUjPwxZSyl2byg+P\ngH7hQ5L6WxiULwqsgrPUPdx442DIwxN4RCqTX7+bEWKqA6fw8uOh7FhMEG24\ngci8XbE4TApUzAdxHFj3I3JSXoZfQnG0MkZ+CD3pmDcgH06335w/ChgYI4R6\n3ca2sqB7pPgUOKouvU8FwzVHw4At2Gjx6xQWxWdEqrGRrWWSuhGR6K6EdBwf\nhy6J\r\n=VWc+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG5RiZ4QnLMSnHDVqZSEFuaMLv6CfE5fPasSb5ccIseQAiEA3hcK96JUZePzk90d2hOA5kYnX29zmxx97i33hW4eYYU="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_0.9.0_1570133179796_0.8740241386107317"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-alpha.1":{"name":"@absolunet/ioc-app","version":"1.0.0-alpha.1","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-alpha.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-66000yLVTibBg8rVT/absolunet-ioc-app-1.0.0-alpha.1.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the better things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-alpha.1","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-1UTxppHhJ5Agii7HeR52ssFEUi/k7IfUIZyRnCpMzjW3AqzyFjLQ0knUe4nUVFTfcCRIAGwQ+8+zk7bVogaiKg==","shasum":"f4e7543ea1405e7deaf478fbced184cdda0ddb05","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-alpha.1.tgz","fileCount":52,"unpackedSize":141642,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdtGKKCRA9TVsSAnZWagAAB2QP/3TQW4DGGYJ8ZTnr12DM\nPKxHd0ZMXG0QMowljahRH/aK/ALQEJQjylo3jTOF9/F5seNpK8LjMGgAOFFt\ntQ5qyl77ruNPAWctRVl1l6cdu3k9WVxpBS7bvZ1T3bILDA5kVSwKqVufnlox\n38bBt1WJcrShEUI4hwzH9NgT2MKapT2a4LQVQIB1xWvmcNHd9SBX+7Zl8PsN\nNllFpOVp/bLTlA565+yn4apkn80WnkmHAqoxJbfKvWqkk20rs8wpk/gk6O9V\nuh3U/3WmBH64z1v8eqqJ6JkElAgnPVKNtVZAdqDe4bENOP7ssF0k/iy4GM3m\ngCKgqYlJTqQ8e5jKmC47+S+X5y5utX6/Le6faspoV3/VEZy9z92OyqCa9yz5\n4szjXl3CrylUJDC88SCigxDDHEO4tDmEUPS4eGgEKuGEiRUls2QZhRtRw14j\nJLmdmpAWX9WmioVoK77Dgv3ewlcrp2D5+BncVGxT41PQCZElvpxT0iFXFy9B\n2GH/EYVwMJx9FxklL5ylte9qLSij4K8u8K81QqyiEqL4i7Y/zZ/ACSMMzi7Q\n2TwqbDgHasK3RBE1yImadm30nFRV7HgyARVnFDLpYckWyuj7K66AQBSNwAgp\nIA+7FGAefv4u6PCB8Sjco5KGFNXqGvGV/LMeyES7HtyeMt5BvwMuvX+u/N0a\nyamX\r\n=gckh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVNEsixYSpGk3ujh3leA4lipWE5Sk1D2FHxlI8vS+ojwIgIigy+NcgJJlKVYSWzYfDqiTudaYNNqsDrkCJhnJd6T4="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-alpha.1_1572102793547_0.6202709704663856"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-alpha.2":{"name":"@absolunet/ioc-app","version":"1.0.0-alpha.2","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-alpha.2","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-48465X7ox0qViqAxR/absolunet-ioc-app-1.0.0-alpha.2.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the best things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-alpha.2","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-wRtQ4kR2svooMkNNq+r01VaU+ph/+wnszD9cUsiy0CpubVNvPbedj/RVvdg2R8GhHQ+eMOYuUV0idaGUYrqymQ==","shasum":"953bf1ebac2bdf3b9e1af30ee3d276eb841a84ba","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-alpha.2.tgz","fileCount":52,"unpackedSize":141765,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdt9x8CRA9TVsSAnZWagAAd3QP/0Nixnn2RT10D7gkrASg\nmTLQlje6eQ+Fq9p3UvWSl6bCohiItQgn/AYdcV0YFU+bV5YoQwNjI2S6H7F+\ngkHlS14lXGa436tu+5Qg/r4xl21u3KDQvNC+Kzz39lYUsWAtGcB3sCwUCQf6\n+RGiqldDHhng+oF7Sw/5pyh6Gj4YDSZpPo0LtFbVue1fbHFvg2QQcf3hEwV6\nO0/MpEUtyjaSMm+lg36fW6cyuVE7EuETbRVSsLM7VP7PgZi3vglu6ccBE4xw\nCqEqPD+YqQkVkT0K/loL9kapgxJK3F6dRubogJ6Z2kmfuqJDvppXaB3oHGO1\n9YD91kO7Wc0LInfmOqFyHV0CWiKmZZ/luQArQi1j2ZUDaA6Ks3d5QpMbtI7I\nnvkTp45Xxprm1NXtKjVJ1DNhJLEkkIJ7XniOBtSRXrCH+W40ORwtIZL+5Cy3\nwQZxawNFwXWKjCg8ZtOLPUjcMW09v7/pya6/3iAoGCnWzFvdrNm7yTLlF0cP\nqvHHiIPNSHBYsN02ubloQEx5KYOCR5lIjKnoPirp7hoel4aCU0OZwlJK2AZN\nc7aMPfRE2uFDqgLv9Z1dJwjv6pIdU9zTyEIftWXJ6r6/l00S7oLKdJc5s419\nqXgtJUX7lCqU6IROibNBaB5rJsehSTmJNNwZUsgbXk0oO9XicpPIN/IFDuIW\nLm/D\r\n=MpXs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0+yn+RZVrzjJrin9XDACOy4RA7/7FfFpiEHZMLuhLRAiEA5pz4EFSDOpx+JXblF5v1knruqLwtZdyTF5Fqy4SZALU="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-alpha.2_1572330620042_0.9936892710212741"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-alpha.3":{"name":"@absolunet/ioc-app","version":"1.0.0-alpha.3","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-alpha.3","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-17867JnkdG9ZDfsTm/absolunet-ioc-app-1.0.0-alpha.3.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the best things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-alpha.3","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-JRbaSIPyz+XhpjNNfuqT6ewYda/Bdu3NHHq8uqa8xPMGxo7gBLEi+uY+slvpXiIlKagcKXTUuKOiiazOuH+12w==","shasum":"bf816b587884723dfc643a31c0248b6a7c9b4b75","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-alpha.3.tgz","fileCount":52,"unpackedSize":142174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdueXdCRA9TVsSAnZWagAADroQAKSdswplFTgjxmII/i/9\npsNmcRaWx1SQQqqLFYaSI1PAhmoYRTYqg2nyNUSRyXlOuQZjK4NdFyULKl0X\n6KnsJxHUGSS9EQ9Ne/NwuVdFT5+ISlooT6CKl+oRxUYCJgc4b46fC48WRsIT\nvQRGgkOHqOXqWRE2HwR3YSE4oO0Lc0ys5QuHAAsIk+Jjyz2JuuNvdxNs9Br3\nYjxCFz1EBtCUGALrFnU2KUwX/xtQ+IehTfxp96AxfuhX14tWkzdnwMb2FC+0\nJ+QxuY5vz9oisTPHn588/xi0Fq6CGXs6OUwXb5Sm+HlsiXm9wV2hdhvWqDUS\nJ/pfzOCekD73imLxHczH1HyXyr2G8FPt6s1D6TfJzrhOzSnL3T+qmPmEDyt5\nJhPpqNycd5AJdlhLdtH3kX/wzKA1H5CnsHgDeLJUJFsSrE7gZdkLHmlq3zc9\nBpN9d/qSsNc1uPTTINYvBL76NqaMyu92mfqWnFFcR3wrE9KdKLM+mphhUcre\noKc7JYU+FXFeUhl3gDRC/g51Gs68dWMY475WBW9TLn9iFU4W1TbmcKK/vZk5\nQpQGd43SfTxd4IkK/CZzkqBKlqPooVW2Uul935JiTPVFVT3o8X2FoJljGSIH\nkhDhZM4xCibr4WeDJ8nvm4aqi2OMAx400hChJ0JJHlLyNdxm6trfCLzLOUcH\ngGnl\r\n=QM2B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICHMLepZAbTUhumw2zh0CybgK7q9cAL0kZUPF01FiFEmAiBwskTKTAghp3ZdRTJHI89/5H3FMO6lWRWLg7P/ejeR9Q=="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-alpha.3_1572464092984_0.15252444619230543"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-alpha.4":{"name":"@absolunet/ioc-app","version":"1.0.0-alpha.4","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-alpha.4","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-69450RCLZJiWStT9L/absolunet-ioc-app-1.0.0-alpha.4.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex.js](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the best things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-alpha.4","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-GmBw0MQ3J8OkIQ3swzKtrhKfNHsbGADK756dn2ultxDR8Rc9o0GuRSgeuwfR1wTyBwF6dZJ178hCTmTvaZpBNA==","shasum":"3ec817991e0e9b8b51bc72f24d31b79184f5fb05","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-alpha.4.tgz","fileCount":53,"unpackedSize":143196,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvG4ACRA9TVsSAnZWagAA5wIP/iNo3ace8xOdv39Yykst\nPAwPh2vK5HIBp3/sRLhQz1vlfJFGtceGE512bId18rhv57/58E6NIvFYzQfs\nqqiwpJSwfGFW5ZNQ6/Ql4irvT3tKyfaV+oN3hMjgrt6FPNwUmDzyGddRsULm\nGVnCYeQsojgQW0clpzeEIgXdXwRort/5q4psaDfzxfqLMnfLtYkud1XLk+LX\ntMs6JxtTLUSk9s/rW26Lk9sUk3eqVBnmEgObwU2DpkHXL7d/gXzxk+y3vsnU\noK0a6eo66qxv5M4471s93PlqJquWNg6Mlcj2gGXy7H6h2fW+N+x71WDTWJYX\nOStvZhfMY1xYJ00UyIEL3pX0f+2I00Z+Pf5+D07DMM3x/u83HWkiFQhpceWx\nEH5cGVPs9l3YQztWnHSqOW3eMZKybz2wwIZ+dZnT8EV3bP7B+u0WO0MAR0oT\nWdDz0cMGgPcv0VOoC9ekBa6oWIlVZ6TSHbwd794rycmd3IYTSYWrLJ9uiQlQ\nDXUsU0uinUGJ+wuqLT+aN8MEkdtsXlB/9lXlZEH1wq6lhDwcA0hu7ePE2q87\nhuUwxNSZqi3J5ZlVvaFn5zFf4uG8Q5ESQ0y+Glq6qOLFlGDmEpMXVC3M1wyW\n0mrzq8CIUOnGPDQSNtgFVXaPcoaI3tRog6djtQ/wzYe3IYo87HnuNFaWLZaG\nkEzL\r\n=5BA6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC455gjIsjb45hFufSB/LoTe5X2ZmB0DrbenMs7zkdsQgIhAM07QfrOVpfelOprV1mjSFymOxnWyDbnCZxtcjFq8ZUt"}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-alpha.4_1572630016106_0.7517041336183556"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-beta.1":{"name":"@absolunet/ioc-app","version":"1.0.0-beta.1","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","ava":"^2.4.0","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-beta.1","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-59093y1on5pPmTRVN/absolunet-ioc-app-1.0.0-beta.1.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex.js](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the best things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-beta.1","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-H58SmRdg/ldMGO06Uebe2jp9gKOKhIN8msHaqWBgQRmP9h1hyVzV0QMYtamJzODx7KzJPiRsXCG7j173maP68Q==","shasum":"6ac368ef34a0fabac16b920cc82bfcc843aecec8","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-beta.1.tgz","fileCount":55,"unpackedSize":144371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdwWbzCRA9TVsSAnZWagAAun4P/3fr5p60Z0G4gRsMZXg4\nak8F27dphk4UzXnoO1TDhqxMS027h5SLLgijDcGTlUyRlTirvuZXSchSxROl\n4KIh+B4hh0SZ5ejMq7lyR2FoEHRKhtSUk9s003Hn0vtUCDPWMr2P2Y+XLyBK\nzKvewhqip9w0Y/8lU5nw3Re+e0zFJPoiP6zWmUH7gBs2vacslCpLrzd+ia2h\nvel5kr/KoE9RUOxQO05cz5cnK8puXYbTBXykiwm4cKQlltVDDL1adErLiNqi\noe5VIQs1QC5HQ1wYO858Pu3wsnQNpVxPbcXp1wgULEdzwCqVMyX1+awdtlaI\nF1yOsimUQQylRwcKmEctWff5bF/4PFVzC51MCdNuuAMIH1hSrhpncnuFbAZg\nz9aG6hbJC8/m6Q+25xw1N8XnHSQuejUTNUTG9hb3lVx3m0N/CkpbvvzLCtCi\nSUEBQnTtyw7rQmPZ2CxhXdnLamuyjsaE3fF5lJ7ruZjRuQMuto0vy8ukppRX\nJBjVFb4q1tJnAw2W1MJVoGiiZcD/xAL2f/wLp1tQ95+pO9VDHVE/BeDrDm8I\nWOiEpuCLCukbGlPo32Pv/JL8yP7R2frxhBt6euKmCzzMVUk9S/Aoug7LN/Ho\ntwLIfC/IJSPaTO5jnoJVVea+StiLX8ybK8vp689ZRoHKg0qAjyPH/Qs3EeQG\nQEmf\r\n=le69\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDesHlR21NNPtOhAtpKHe1jQpaiFDs9mQQKZWmtQMAylgIhAJXgpBGvWEmB2m2dmCUFc5qUwG5ZaZHYKNzG1PTqzGFY"}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-beta.1_1572955890921_0.034561527072545895"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-beta.3":{"name":"@absolunet/ioc-app","version":"1.0.0-beta.3","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-beta.3","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-27118E50BqC4sG9EN/absolunet-ioc-app-1.0.0-beta.3.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [Node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex.js](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the best things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-beta.3","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-9e1USUE+/3paY0d2zxMg/awoB7o55sSNdH58cH+5cm5Pf9MmB4SEY9gyjldDzCNnPcZm27fAxL9Ss7R++7Sn/w==","shasum":"3a7365a2ba4a3756735dd451fa0518b47dccb015","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-beta.3.tgz","fileCount":55,"unpackedSize":44026,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1pciCRA9TVsSAnZWagAAiC4P/jJAqisYdccCfwGdFihq\nhkxDHSnU8ytx06Xknij8PS4gUsCUAwey1p2QZh88FIcC0Vs/3bllxEs4PbaS\n61UL1OlbYYxZ9Q3YIRgVpeJBacGaWwHYRXzyN6wNTIek2s8pM9KppXtipYPU\nTFpqgdN6nbBpwsisjLm0aIEBm20YNW4oL/c370KV9T9RzrfG0LTBJRos7b9y\nzKtBRbY+pf/iSZvwej/TJRxavfBFuq46dEF/hkxQx4aBPJgUfWzLX/SpBPGg\nArAR/NFSMAhbAgkifZboeW3nSSoYanLYTODYXV/l/uZInWxeO0fVa/q0tHNl\nzNUFOPwEKdqlQLRmMMw9rnUDgqrzPwb29+G//ldbl4bwEp0f25m2XCSJBuKu\nu2K8P+O/ejwCIauPTaGDak6NKemg9RaYlxijyB0NYSUfAVfELo0hI6CxDz5t\n4wy8Ma/ZmCGAsrt/96GY53BN40SfFSX8JPBJIsEsptur/BEa5fv7DWUpO1/5\nFwBhDbU0q/al3A2dumUMSoXAyMftve+Cc1HVyzFxKusIygEQAGtPBYMxSP+z\nVU+1IiFTy5Xw4u1StZ+45rVnA5FNqEW2I/8pYqWp05gsuep2DbIU9bTGRTqP\nmM6YbtVVLl5N7lFyefEWSryrqvKWMls9QQ6OAPC8q1aMGxeG+0olxl1o2OHU\n5Xmc\r\n=n3xO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA3fp2/O2G8v4qjOr1yv8z/A2X/ME19L2ee6ovf1V3OkAiEA6zPfmvMrIVo5dnvrmLt15OFkC0MZTAmj4HIGi4Ranpk="}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-beta.3_1574344481876_0.04249599070259924"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"},"1.0.0-rc.2":{"name":"@absolunet/ioc-app","version":"1.0.0-rc.2","description":"The perfect IoC framework for Node.js lovers","definition":"","homepage":"https://github.com/absolunet/node-ioc-app","author":{"name":"Absolunet","url":"https://absolunet.com"},"keywords":["node","absolunet","ioc","solid","container","di","framework"],"license":"MIT","repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"bin":{"ioc":"ioc"},"engines":{"node":">= 12.0.0"},"main":"dist/node/index.js","scripts":{"test":"node test --scope=all","test:standards":"node test --scope=standards","test:unit":"node test --scope=unit","test:feature":"node test --scope=feature","test:integration":"node test --scope=integration","test:endtoend":"node test --scope=endtoend","manager:install":"node manager --task=install","manager:outdated":"node manager --task=outdated","manager:build":"node manager --task=build","manager:watch":"node manager --task=watch","manager:documentation":"node manager --task=documentation","manager:prepare":"node manager --task=prepare","manager:rebuild":"node manager --task=rebuild","manager:publish":"node manager --task=publish","manager:publish:unsafe":"node manager --task=publish:unsafe"},"devDependencies":{"@absolunet/manager":"2.0.0","@absolunet/tester":"3.0.5","jest":"24.9.0"},"dependencies":{"@absolunet/ioc":"1.0.0-rc.2","@absolunet/private-registry":"^2.0.0"},"_resolved":"","_integrity":"","_from":"file:/var/folders/hs/0r1_mndn3nvdxclbqpz7c9k034305_/T/absolunetmanager-package-tarball-52480FBnCqL5wTPt4/absolunet-ioc-app-1.0.0-rc.2.tgz","readme":"# Node IoC\n\n[![npm](https://img.shields.io/npm/v/@absolunet/ioc.svg)](https://www.npmjs.com/package/@absolunet/ioc)\n[![npm dependencies](https://david-dm.org/absolunet/node-ioc/status.svg)](https://david-dm.org/absolunet/node-ioc)\n[![npms](https://badges.npms.io/%40absolunet%2Fioc.svg)](https://npms.io/search?q=%40absolunet%2Fioc)\n[![Travis CI](https://travis-ci.com/absolunet/node-ioc.svg?branch=master)](https://travis-ci.com/absolunet/node-ioc/builds)\n\n[![Code style ESLint](https://img.shields.io/badge/code_style-@absolunet/node-659d32.svg)](https://github.com/absolunet/eslint-config-node)\n\n\n## About Node IoC\n\nNode IoC is a [Node.js](https://nodejs.org) framework designed to help developers create elegant and well-designed applications, for both the Web and the CLI. Based on _[SOLID](https://en.wikipedia.org/wiki/SOLID)_ principles, it comes out with a lot of features that removes the pain of crafting new applications:\n\n - Simple, yet powerful, [dependency injection container](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/container)\n - Complete [CLI command system](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/commands) powered by [Yargs](http://yargs.js.org/)\n - Full [routing and HTTP handling](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/routing) powered by [Express](https://expressjs.com/)\n - [Knex.js](http://knexjs.org/) [database connections](https://documentation.absolunet.com/docs-node-ioc/en/1.0/handling-data/database) with [Bookshelf ORM](https://bookshelfjs.org/)\n - [Cache system with multiple back-ends](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/caching)  \n - [Configuration over code approach](https://documentation.absolunet.com/docs-node-ioc/en/1.0/basics/config)\n - Multiple 3rd-party integrations such as [PubSubJS](https://github.com/mroderick/PubSubJS), [joi](https://hapi.dev/family/joi/), [JsRender](https://www.jsviews.com/) and much more\n - [Modular structure with simple integration](https://documentation.absolunet.com/docs-node-ioc/en/1.0/architecture/service-provider)\n - Complete and powerful [Jest integration for testing](https://documentation.absolunet.com/docs-node-ioc/en/1.0/going-deeper/test) with a class-based approach, like [PHPUnit (PHP)](https://phpunit.de/) or [NUnit (C#)](https://nunit.org/)\n\nNode IoC was mostly inspired by Laravel and Symfony for the structure, as well by Angular.js for the dependency injection approach. The key that makes Node IoC a better platform to start with is that it is based on all the best things that have been made in JavaScript so far: it unifies the most popular tools and makes implementing them under a complex application feel like a breeze.\n\n\n## Learning Node IoC\n\nThe simplest way to learn Node IoC is through the [official documentation](https://documentation.absolunet.com/docs-node-ioc). You can easily get started with the early chapters that give you the step-by-step approach to install the application and to implement basic features. However, if you want to go deeper, the documentation covers all key features, or you can read the [API documentation](https://documentation.absolunet.com/docs-node-ioc/api).\n\n\n## Contributing\n\nYou are welcome to contribute to the Node IoC framework. You can find the official contribution guide in the [official documentation](https://documentation.absolunet.com/docs-node-ioc/en/1.0/contributions).\n\n\n## Code of Conduct\n\nTo ensure that the Node IoC community is welcoming to all, please review and abide by the [Code of Conduct](code_of_conduct.md).\n\n\n## License\n\nThe Node IoC framework is open-sourced software created by [Absolunet](https://absolunet.com) and licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","readmeFilename":"readme.md","_id":"@absolunet/ioc-app@1.0.0-rc.2","_nodeVersion":"12.5.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-n6ChZLQoHPD4GvUVOXlkB49BzjP1IR6qyeFWWaEcYRovzE/YASnAmNMFDbpj2mI6XjRNRIq75vWTJvKPuzJ/Bg==","shasum":"ff603a538e3527a12de643a9ce50f24e9317388e","tarball":"https://registry.npmjs.org/@absolunet/ioc-app/-/ioc-app-1.0.0-rc.2.tgz","fileCount":55,"unpackedSize":44429,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6A9VCRA9TVsSAnZWagAAOHMP/2D5+kNPEkynPxjQnha9\nYGLL3IxWDgKdouLpGY1PBGIfCKuftZcElKcfZar6n7U2MgzPCUrhilIJovQd\n9V8wMMpbwFET7XG+/oX7+kD+LqS6lI8mvgyk4giiBLz2D69MXOUH+cWTTrkR\nxuwv4VkHhANptQwKclYOMsiybA+3NaP9sQZyPft2UNUQo8qjQedZ/9RjoQsn\ndAo1YXo00kJCzKPtC3tR/KljQQMrepH013doOAl/+2c5CY1v1VknOHiDNm+8\nIOkRrh5I8bBp+lDbXvykdH300UtV/XPutt3bi2dnFqcDXeVeaseQFHM5TDEM\n0m89qeZv5aVK26uaZLU5NiAwgEgTr4jKlz2nWOaky6zehW7Fsk8oVe9Vw+qC\nbRUPq9x/WlTg58rUPE/X9zFCfcaxe/nIQmWlrrYQFAZ9taS0Z/REmJ8NsAfK\nNTdE5v3x6U21RMzOIy5nypa+on4EesmOMWHLBhhH7mgz5fg27BRgQsHFoxCv\nwHuqC/PNwIr24g/g19Y9mPXpRjEj7fxKkkpnWckGusUch7m73xIMyOu9lMr8\n3jcRr8BNTPzT6uzj5ccd3cVTUX9giBG5yQ4qgmZQCqxKUDyxEkizOckwYgs3\nFw6WaCpkXPZJn/haQtwKGYFl4zCOljidvQAthjbUNayDj66bSW+D8jom2uir\n+jgu\r\n=jcXB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDo9jCIJ1iaz9sDVs5DzKI7XQcIo5xfXffHwRSJp+0rPQIhALxq4whIu7VzzBJ56cdH3QkdOUMHWmZoqB6ybCSyU2hS"}]},"maintainers":[{"name":"absolunetdev","email":"dev@absolunet.com"},{"name":"jblandry","email":"npm@jblandry.info"},{"name":"tparent-abso","email":"tparent@absolunet.com"}],"_npmUser":{"name":"tparent-abso","email":"tparent@absolunet.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ioc-app_1.0.0-rc.2_1575489365029_0.8710866930664238"},"_hasShrinkwrap":false,"deprecated":"Not maintained anymore"}},"time":{"created":"2019-07-11T13:56:41.187Z","0.3.0":"2019-07-11T13:56:41.547Z","modified":"2023-02-09T21:56:46.647Z","0.3.1":"2019-07-11T14:40:49.505Z","0.4.1":"2019-07-21T12:07:07.435Z","0.4.2":"2019-07-21T12:09:04.370Z","0.6.1":"2019-08-21T14:48:42.281Z","0.7.1":"2019-09-09T21:03:38.035Z","0.8.1":"2019-09-17T01:57:02.620Z","0.8.3":"2019-09-17T18:59:29.540Z","0.9.0":"2019-10-03T20:06:19.970Z","1.0.0-alpha.1":"2019-10-26T15:13:13.715Z","1.0.0-alpha.2":"2019-10-29T06:30:20.328Z","1.0.0-alpha.3":"2019-10-30T19:34:53.141Z","1.0.0-alpha.4":"2019-11-01T17:40:16.314Z","1.0.0-beta.1":"2019-11-05T12:11:31.090Z","1.0.0-beta.3":"2019-11-21T13:54:42.036Z","1.0.0-rc.2":"2019-12-04T19:56:05.189Z"},"maintainers":[{"email":"abso-opensource@valtech.com","name":"valtech_commerce"},{"email":"dev+absobot-npm@absolunet.com","name":"absobot"},{"email":"npm@jblandry.info","name":"jblandry"}],"description":"IoC","homepage":"https://github.com/absolunet/node-ioc-app","keywords":["node","absolunet"],"repository":{"url":"git://github.com/absolunet/node-ioc-app.git","type":"git"},"author":{"name":"Absolunet","url":"https://absolunet.com"},"bugs":{"url":"https://github.com/absolunet/node-ioc-app/issues"},"license":"MIT","readme":"","readmeFilename":""}