{"_id":"hackages","_rev":"33-88b21d79dd1617b8040352a1a2b8592d","name":"hackages","dist-tags":{"latest":"0.4.0"},"versions":{"0.0.1":{"name":"hackages","version":"0.0.1","keywords":["angular","react","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.1","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hackages":"tools/index.js"},"dist":{"shasum":"d4fd22133aaeb438dcd585e2963b58cf369849b3","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.1.tgz","integrity":"sha512-SUkPBpagpQ+yc+gHxaXe1dIp6GsKuwDHz7pIcRrhPUxL05rXR7F2s0c3wdQ3fFxnvoyK+KjT6LpugYQ3orc/wg==","signatures":[{"sig":"MEUCIC3GS5QeIUaPyMqxqdXKSfhdy5aWoVZohZUiyztWkIJaAiEAtmpqxnvNmeJoY56Mxmfcm40DvErJTYHRspGpelUaAMA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"d4fd22133aaeb438dcd585e2963b58cf369849b3","gitHead":"07b294a192c5a42aba333f98ce93522c193a0ad3","scripts":{"lint":"eslint scripts","test":"karma start karma.conf.cli.js","build":"webpack --config webpack.config.js","start":"babel-node start.js","watch":"webpack --config ./webpack.config.js -w","bamboo":"mocha -R mocha-bamboo-reporter","deploy":"node publish.js","pretest":"rm -rf mocha.json && npm i","runTest":"babel-node tools/exec karma"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.5","chai":"^3.5.0","chalk":"^1.1.1","karma":"^0.13.22","mocha":"^2.4.5","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","babel-core":"^6.7.4","estraverse":"^4.2.0","file-loader":"^0.8.5","karma-mocha":"^0.2.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","babel-require":"^1.0.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"jasmine-expect":"^2.0.2","babel-preset-stage-0":"^6.5.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.1.tgz_1459716007603_0.7972832645755261","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.2":{"name":"hackages","version":"0.0.2","keywords":["angular","react","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.2","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hackages":"bin/index.js"},"dist":{"shasum":"6b87138fc480d7f49fa308e55885b4ff64c55c78","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.2.tgz","integrity":"sha512-I2qArrCKHnVs2SfXEEJrZ/PRskOc5c83JC4JsaWdffkJotgEOP9djjHqjRjJutSpkSLCcndRAAV5Wd2AOl6+dQ==","signatures":[{"sig":"MEQCIB+EF5S70xv59yYb81Umh1gG0kJdzSQCKX7ocUoAf9Y/AiAxZeOV2ex+AYYoxK5Yn3ePuBzSiq/BT+en0B/t+dQ3oA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"6b87138fc480d7f49fa308e55885b4ff64c55c78","gitHead":"2ae852f2f43785f26a4307fb42be007186428f51","scripts":{"lint":"eslint scripts","test":"karma start karma.conf.cli.js","build":"webpack --config webpack.config.js","start":"babel-node start.js","watch":"webpack --config ./webpack.config.js -w","bamboo":"mocha -R mocha-bamboo-reporter","deploy":"node publish.js","pretest":"rm -rf mocha.json && npm i","runTest":"babel-node tools/exec karma","predeploy":"npm run build && cp -rf tools/config dist"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.5","chai":"^3.5.0","chalk":"^1.1.1","karma":"^0.13.22","mocha":"^2.4.5","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","babel-core":"^6.7.4","estraverse":"^4.2.0","file-loader":"^0.8.5","karma-mocha":"^0.2.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"gulp":"^3.9.1","gulp-babel":"^6.1.2","gulp-concat":"^2.6.0","babel-runtime":"^6.6.1","gulp-sourcemap":"^1.0.1","jasmine-expect":"^2.0.2","gulp-sourcemaps":"^1.6.0","babel-preset-stage-0":"^6.5.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.2.tgz_1459924693791_0.035883749136701226","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.3":{"name":"hackages","version":"0.0.3","keywords":["angular","react","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.3","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hackages":"bin/index.js"},"dist":{"shasum":"a37e7e4c54ce6665147b27c984d2913c4a8530e9","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.3.tgz","integrity":"sha512-bic7s25ozu6MOngAG5GJXPDpXBR93w0JISKZlUoS6Ed8RzaNGC9hfCWRgwah99MoWYSqMuJsEVkNW28fVnBOwg==","signatures":[{"sig":"MEYCIQCDe7gW/6NvQXbVg1Lt8v3B2a5fQTE7HuWUyzRF4uVwoQIhAO2xEl/oEeOhfp3PTYvfjOKVUFgvz6OEkw4HywengQK0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"a37e7e4c54ce6665147b27c984d2913c4a8530e9","gitHead":"4bd4808470b244335b26c487f7c4f2e0b063ae91","scripts":{"lint":"eslint scripts","test":"karma start karma.conf.cli.js","build":"webpack --config webpack.config.js","start":"babel-node start.js","watch":"webpack --config ./webpack.config.js -w","bamboo":"mocha -R mocha-bamboo-reporter","deploy":"node publish.js","pretest":"rm -rf mocha.json && npm i","runTest":"babel-node tools/exec karma","predeploy":"npm run build && cp -rf tools/config dist"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.5","chai":"^3.5.0","chalk":"^1.1.1","karma":"^0.13.22","mocha":"^2.4.5","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","babel-core":"^6.7.4","estraverse":"^4.2.0","file-loader":"^0.8.5","karma-mocha":"^0.2.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"gulp":"^3.9.1","gulp-babel":"^6.1.2","gulp-concat":"^2.6.0","babel-runtime":"^6.6.1","gulp-sourcemap":"^1.0.1","jasmine-expect":"^2.0.2","gulp-sourcemaps":"^1.6.0","babel-preset-stage-0":"^6.5.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.3.tgz_1460011509419_0.7715060152113438","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.4":{"name":"hackages","version":"0.0.4","keywords":["angular","react","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.4","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hackages":"bin/index.js"},"dist":{"shasum":"2e4df657a93f74514dc3401186d337b0acdebda7","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.4.tgz","integrity":"sha512-Vod/7b7jIbRkXeB4EWoNOyBMzi4UtpbYcVwiaimr3H7hHW8t72+8Ji7zbEnA411gLd7dDLPwLSvp7HmL0xLxWg==","signatures":[{"sig":"MEQCIGDr2SYyC5LutKJJiGdxVbYWZfgy1qhUoZ6Jkn7jDrEUAiBLZiukjn0vvDFw0nPEOWcHwxGMk1L2SZco3fojsZybUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"2e4df657a93f74514dc3401186d337b0acdebda7","gitHead":"46ad8919608c04534731cf0421cf552b888fb21a","scripts":{"lint":"eslint scripts","test":"karma start karma.conf.cli.js","build":"webpack --config webpack.config.js","start":"babel-node start.js","watch":"webpack --config ./webpack.config.js -w","bamboo":"mocha -R mocha-bamboo-reporter","deploy":"node publish.js","pretest":"rm -rf mocha.json && npm i","runTest":"babel-node tools/exec karma","predeploy":"npm run build && cp -rf tools/config dist"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.5","chai":"^3.5.0","chalk":"^1.1.1","karma":"^0.13.22","mocha":"^2.4.5","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","babel-core":"^6.7.4","estraverse":"^4.2.0","file-loader":"^0.8.5","karma-mocha":"^0.2.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"gulp":"^3.9.1","gulp-babel":"^6.1.2","gulp-concat":"^2.6.0","babel-runtime":"^6.6.1","gulp-sourcemap":"^1.0.1","jasmine-expect":"^2.0.2","gulp-sourcemaps":"^1.6.0","babel-preset-stage-0":"^6.5.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.4.tgz_1460012019494_0.7843285829294473","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.5":{"name":"hackages","version":"0.0.5","keywords":["angular","react","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.5","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hk":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"61c1769d1a68f9bdaea0d11df60dedd5dd86422f","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.5.tgz","integrity":"sha512-B1OExe5USOxBAbQxKLPsvv56WIss4kJ7wX6lXM3QIkQtITFryKQX8Aal6dcUkxX8BCMrFfEoqGsWZNlFBjhWTw==","signatures":[{"sig":"MEQCIBYjvnGDIiNypwPNU77E3KAwkUln2tvvkeSMGTZMJs66AiBjHfkIlyj1jZ10bcr++rWKec7druExWbStSTDTAzvllA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"61c1769d1a68f9bdaea0d11df60dedd5dd86422f","gitHead":"ec577d042f69b284b78ac477fd9b72d023627438","scripts":{"lint":"eslint scripts","test":"karma start karma.conf.cli.js","build":"webpack --config webpack.config.js","start":"babel-node start.js","watch":"webpack --config ./webpack.config.js -w","bamboo":"mocha -R mocha-bamboo-reporter","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"rm -rf mocha.json && npm i","runTest":"babel-node tools/exec karma","predeploy":"npm run build && cp -rf tools/config dist"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.5","chai":"^3.5.0","chalk":"^1.1.1","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","phantomjs-prebuilt":"^2.1.6","autoprefixer-loader":"^3.2.0","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.5.tgz_1460459758249_0.1383286255877465","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.6":{"name":"hackages","version":"0.0.6","keywords":["angular","react","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.6","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hk":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"61fb361dd022faea42958dc83ee1d7e9fac4b4cd","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.6.tgz","integrity":"sha512-pKFH/HlDQbqYztQ5lO23SGFB5N82Gd0jLkc8XjRwc+diNuALqzMuxxXlCnTg4x0C3I3H7iPBfR+/u3cjisGw8g==","signatures":[{"sig":"MEQCIAhFUWr8278gdBPhAXIvIOXchN7z7R9SJXdGYcKZ4P1jAiBdO1860ohc/MhwIdebCJOwvdYyM+IIswJ1aSopchj3PQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"61fb361dd022faea42958dc83ee1d7e9fac4b4cd","gitHead":"dfd48b94edaec0926620ebe713e2be2b9a769575","scripts":{"ci":"mocha -R mocha-bamboo-reporter","lint":"eslint tools","test":"mocha test -w","build":"webpack --config webpack.config.js","preci":"rm -rf mocha.json && npm i","watch":"webpack --config ./webpack.config.js -w","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"eslint tools","predeploy":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.6","chai":"^3.5.0","chalk":"^1.1.1","husky":"^0.11.4","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","surge":"^0.17.7","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","protractor":"^3.2.2","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","live-server":"^0.9.2","path-exists":"^2.1.0","babel-eslint":"^6.0.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","html-minify-loader":"^1.1.0","phantomjs-prebuilt":"^2.1.6","autoprefixer-loader":"^3.2.0","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","mocha-bamboo-reporter":"^1.1.0","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"live-server":"^0.9.2"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.6.tgz_1460806975262_0.2130235091317445","host":"packages-16-east.internal.npmjs.com"},"directories":{}},"0.0.7":{"name":"hackages","version":"0.0.7","keywords":["angular","react","ampersand","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.7","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hk":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"d6350ecca7ae9ad5b316118b94af076a3eb82a5f","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.7.tgz","integrity":"sha512-tuM25ed3lDUwGtpJv8CwghHFo4i9LGUx5es7U1OCZYneo0jPB/vipcymhAeun4yMlGVNKDGBrg5Oo4YDnxcsMQ==","signatures":[{"sig":"MEQCIHpGuCmFIOuDamFZ8p336a5nan8JMKbz5sn8TblGBihsAiAq0enSIps68xVV/vi6vT+VOUw8nQsHYyHggFxwuMKOiw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"d6350ecca7ae9ad5b316118b94af076a3eb82a5f","gitHead":"9d553632883dd08d7df637a8d16b4888a5ea8fa4","scripts":{"ci":"mocha -R mocha-bamboo-reporter","lint":"eslint tools","test":"mocha test -w","build":"webpack --config webpack.config.js","preci":"rm -rf mocha.json && npm i","watch":"webpack --config ./webpack.config.js -w","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"eslint tools","precommit":"npm run lint","predeploy":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.6","chai":"^3.5.0","chalk":"^1.1.1","husky":"^0.11.4","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","surge":"^0.17.7","eslint":"^2.5.3","git-rev":"^0.2.1","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","commander":"^2.9.0","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","protractor":"^3.2.2","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","live-server":"^0.9.2","path-exists":"^2.1.0","babel-eslint":"^6.0.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","html-minify-loader":"^1.1.0","phantomjs-prebuilt":"^2.1.6","autoprefixer-loader":"^3.2.0","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","mocha-bamboo-reporter":"^1.1.0","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"live-server":"^0.9.2"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.7.tgz_1461327549845_0.012412440497428179","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.8":{"name":"hackages","version":"0.0.8","keywords":["angular","react","ampersand","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.8","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"bin":{"hk":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"ccf976ae6ddb2fe893489eef9a238e5ef049cdd9","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.8.tgz","integrity":"sha512-LIXJtpfEocpNhXrkjUjLtabuBO38PjOIPaOGW3y/h6brP/4REu4cMN2ShiZNOJJSLckJLiuqU18Qpogm3Y0qIA==","signatures":[{"sig":"MEQCIF8pfjtVVzc0tusBJJvw7N4AF96HLQSRxO8vZYQdCuxoAiBmtUdhEXGkmjNJb2xphv3KNRAJlAIAvTQH5lSiQvtoUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/index.js","_from":".","_shasum":"ccf976ae6ddb2fe893489eef9a238e5ef049cdd9","gitHead":"bc2610e5af09b984b068ffbe63c980460aa9b8c0","scripts":{"ci":"mocha -R mocha-bamboo-reporter","lint":"eslint tools","test":"mocha test -w","build":"webpack --config webpack.config.js -p","preci":"rm -rf mocha.json && npm i","watch":"webpack --config ./webpack.config.js -w","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"eslint tools","precommit":"npm run lint","predeploy":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.6","chai":"^3.5.0","chalk":"^1.1.1","husky":"^0.11.4","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","surge":"^0.17.7","eslint":"^2.5.3","git-rev":"^0.2.1","shelljs":"^0.7.0","webpack":"^1.12.14","cliparse":"^0.2.5","babel-cli":"^6.6.5","commander":"^2.9.0","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","protractor":"^3.2.2","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","live-server":"^0.9.2","path-exists":"^2.1.0","babel-eslint":"^6.0.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","html-minify-loader":"^1.1.0","phantomjs-prebuilt":"^2.1.6","autoprefixer-loader":"^3.2.0","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","bower-webpack-plugin":"^0.1.9","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","mocha-bamboo-reporter":"^1.1.0","karma-sourcemap-loader":"^0.3.7","webpack-bower-resolver":"0.0.1","webpack-node-externals":"^1.0.0","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"live-server":"^0.9.2"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.8.tgz_1463912147738_0.7753561339341104","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.0.9":{"name":"hackages","version":"0.0.9","keywords":["angular","react","ampersand","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.9","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"homepage":"https://github.com/hackages/hackages","bugs":{"url":"https://github.com/hackages/hackages/issues"},"bin":{"hack":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"7075e5fdb7b3417cf394dd556cc9ec26786eb728","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.9.tgz","integrity":"sha512-uqU8s/DTMOz6A8zvA6CvtNDF/znCXmztLVAK5+/ACMNGLfCd7mH0oj30QWTHxNsYRzgpLSGbVYmxIkq1irNypA==","signatures":[{"sig":"MEUCIQDzGwt2Roggigpx49d8hozJAw9BPTghkbuMdsdzDMi5fgIgBzwWlqjB75CTsPD8RUqCZZ8Tf4Su/c1+O2882XeQRY4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/parser/index.js","_from":".","_shasum":"7075e5fdb7b3417cf394dd556cc9ec26786eb728","gitHead":"846896316546f1fb39172206f00d843c980584e4","scripts":{"ci":"mocha -R mocha-bamboo-reporter","lint":"eslint tools","test":"mocha test -w","babel":"babel tools/**/*.js -d dist/","build":"webpack --config webpack.config.js","preci":"rm -rf mocha.json && npm i","start":"npm-run-all --parallel test watch","watch":"watchman tools/ 'npm run babel'","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"eslint tools","webpack":"webpack --config ./webpack.config.js -w","precommit":"npm run lint","predeploy":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"repository":{"url":"git+https://github.com/hackages/hackages.git","type":"git"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.6","chai":"^3.5.0","chalk":"^1.1.1","husky":"^0.11.4","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","surge":"^0.17.7","eslint":"^2.5.3","git-rev":"^0.2.1","shelljs":"^0.7.0","webpack":"^1.12.14","cliparse":"^0.2.5","watchman":"^0.1.8","babel-cli":"^6.6.5","commander":"^2.9.0","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","protractor":"^3.2.2","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","live-server":"^0.9.2","npm-run-all":"^2.1.1","path-exists":"^2.1.0","babel-eslint":"^6.0.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","html-minify-loader":"^1.1.0","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","mocha-bamboo-reporter":"^1.1.0","karma-sourcemap-loader":"^0.3.7","webpack-node-externals":"^1.0.0","imagemin-webpack-plugin":"^1.0.7","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","npm-install-webpack-plugin":"^4.0.3","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"eslint-watch":"^2.1.11","html-webpack-plugin":"^2.21.0","style-ext-html-webpack-plugin":"^2.0.0-beta.3"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.9.tgz_1477376127704_0.7731773692648858","host":"packages-18-east.internal.npmjs.com"},"directories":{}},"0.0.10":{"name":"hackages","version":"0.0.10","keywords":["angular","react","ampersand","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.0.10","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"homepage":"https://github.com/hackages/hackages","bugs":{"url":"https://github.com/hackages/hackages/issues"},"bin":{"hack":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"dd1dc2bc601a031f3066238d3a3b94ecbc5968d9","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.0.10.tgz","integrity":"sha512-XCwkN8KplH+41Ly8ZaT2n4DTpCl1U8409Gdp9A1nDq7IICaSSIKyro9hm4w1ON+pdxHP5Tj3BXacqc/l6zbNYQ==","signatures":[{"sig":"MEUCIQCSoKWuxbjHMGmvs0N0vF0KMgK5INnCchaPftbYaB/afgIgMwJWcO2qXfRdcJn1iSscYM4HqsdBSyr5DXr9i4FOwo4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/parser/index.js","_from":".","_shasum":"dd1dc2bc601a031f3066238d3a3b94ecbc5968d9","gitHead":"dbe365a97fd7211f653571b6c97f762280b89419","scripts":{"ci":"mocha -R mocha-bamboo-reporter","lint":"eslint tools","test":"mocha test -w","babel":"babel tools/**/*.js -d dist/","build":"webpack --config webpack.config.js","preci":"rm -rf mocha.json && npm i","start":"npm-run-all --parallel test watch","watch":"watchman tools/ 'npm run babel'","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"eslint tools","webpack":"webpack --config ./webpack.config.js -w","precommit":"npm run lint","predeploy":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"repository":{"url":"git+https://github.com/hackages/hackages.git","type":"git"},"_npmVersion":"3.8.3","description":"cli tools to build fast and scalable applications","_nodeVersion":"5.10.0","dependencies":{"npm":"^3.8.6","chai":"^3.5.0","chalk":"^1.1.1","husky":"^0.11.4","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","surge":"^0.17.7","eslint":"^2.5.3","git-rev":"^0.2.1","shelljs":"^0.7.0","webpack":"^1.12.14","cliparse":"^0.2.5","watchman":"^0.1.8","babel-cli":"^6.6.5","commander":"^2.9.0","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","protractor":"^3.2.2","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","live-server":"^0.9.2","npm-run-all":"^2.1.1","path-exists":"^2.1.0","babel-eslint":"^6.0.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","html-minify-loader":"^1.1.0","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","mocha-bamboo-reporter":"^1.1.0","karma-sourcemap-loader":"^0.3.7","webpack-node-externals":"^1.0.0","imagemin-webpack-plugin":"^1.0.7","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","npm-install-webpack-plugin":"^4.0.3","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"eslint-watch":"^2.1.11","html-webpack-plugin":"^2.21.0","style-ext-html-webpack-plugin":"^2.0.0-beta.3"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.0.10.tgz_1477399924109_0.1774838005658239","host":"packages-12-west.internal.npmjs.com"},"directories":{}},"0.1.0":{"name":"hackages","version":"0.1.0","keywords":["angular","react","ampersand","hackages","javascript"],"author":{"name":"davy@hackages.io"},"license":"MIT","_id":"hackages@0.1.0","maintainers":[{"name":"davyengone","email":"davy@philos.io"}],"homepage":"https://github.com/hackages/hackages","bugs":{"url":"https://github.com/hackages/hackages/issues"},"bin":{"hack":"bin/index.js","hackages":"bin/index.js"},"dist":{"shasum":"00b22d7849e4a4fff69139fa5c50afebd1ea3f26","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.1.0.tgz","integrity":"sha512-wBd/0nA+671YsVUw/socRWE3GRC0VyNr4wC+QBycLZiRUw6RcVcSu7SegOmry70WuiJBGGwF/EfcG31GZL7QoA==","signatures":[{"sig":"MEUCIAZnzTmjMcaIcvJmRKqmHRt+cukxaWWpvy1JJHrdHdUDAiEA8XU7+iNT7G0GSynO3u6wciljk6+sqTBZywEReM2gKZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"tools/parser/index.js","_from":".","_shasum":"00b22d7849e4a4fff69139fa5c50afebd1ea3f26","gitHead":"3b390aa5f0cb16e5f503eadea8fbad9a53b4d5c2","scripts":{"ci":"mocha -R mocha-bamboo-reporter","lint":"eslint tools","test":"mocha test -w","babel":"babel tools/**/*.js -d dist/","build":"webpack --config webpack.config.js","preci":"rm -rf mocha.json && npm i","start":"npm-run-all --parallel test watch","watch":"watchman tools/ 'npm run babel'","deploy":"node publish.js","codecov":"mocha -- -R -spec && codecov","pretest":"eslint tools","webpack":"webpack --config ./webpack.config.js -w","precommit":"npm run lint","predeploy":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@philos.io"},"repository":{"url":"git+https://github.com/hackages/hackages.git","type":"git"},"_npmVersion":"3.10.10","description":"cli tools to build fast and scalable applications","_nodeVersion":"7.2.1","dependencies":{"npm":"^3.8.6","chai":"^3.5.0","chalk":"^1.1.1","husky":"^0.11.4","karma":"^0.13.22","mocha":"^2.4.5","react":"^15.0.0","surge":"^0.17.7","eslint":"^2.5.3","git-rev":"^0.2.1","shelljs":"^0.7.0","webpack":"^1.12.14","cliparse":"^0.2.5","watchman":"^0.1.8","babel-cli":"^6.6.5","commander":"^2.9.0","react-dom":"^15.0.0","babel-core":"^6.7.4","css-loader":"^0.23.1","estraverse":"^4.2.0","protractor":"^3.2.2","raw-loader":"^0.5.1","url-loader":"^0.5.7","file-loader":"^0.8.5","html-loader":"^0.4.3","json-loader":"^0.5.4","karma-mocha":"^0.2.2","live-server":"^0.9.2","npm-run-all":"^2.1.1","path-exists":"^2.1.0","babel-eslint":"^6.0.2","babel-loader":"^6.2.4","jasmine-core":"^2.4.1","style-loader":"^0.13.1","babel-runtime":"^6.6.1","eslint-loader":"^1.3.0","estraverse-fb":"^1.3.1","karma-jasmine":"^0.3.8","karma-webpack":"^1.7.0","babel-polyfill":"^6.7.4","babel-register":"^6.7.2","jasmine-expect":"^2.0.2","karma-coverage":"^0.5.5","babel-preset-react":"^6.5.0","html-minify-loader":"^1.1.0","phantomjs-prebuilt":"^2.1.6","babel-preset-es2015":"^6.6.0","eslint-plugin-react":"^4.2.3","babel-preset-stage-0":"^6.5.0","eslint-config-airbnb":"^6.2.0","karma-mocha-reporter":"^2.0.0","karma-bamboo-reporter":"^0.1.2","mocha-bamboo-reporter":"^1.1.0","karma-sourcemap-loader":"^0.3.7","webpack-node-externals":"^1.0.0","imagemin-webpack-plugin":"^1.0.7","jasmine-promise-matchers":"^2.0.2","karma-babel-preprocessor":"^6.0.1","karma-phantomjs-launcher":"^1.0.0","npm-install-webpack-plugin":"^4.0.3","babel-plugin-transform-runtime":"^6.6.0","babel-plugin-transform-async-to-generator":"^6.7.4"},"devDependencies":{"eslint-watch":"^2.1.11","html-webpack-plugin":"^2.21.0","style-ext-html-webpack-plugin":"^2.0.0-beta.3"},"_npmOperationalInternal":{"tmp":"tmp/hackages-0.1.0.tgz_1487769837377_0.38279390963725746","host":"packages-18-east.internal.npmjs.com"},"directories":{}},"0.1.1":{"name":"hackages","version":"0.1.1","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.1.1","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"1add03f05e4b9e03b936dc9db5424aeb882b3d4e","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.1.1.tgz","fileCount":38,"integrity":"sha512-KrzgBo8xQ0h//kFKbuF+bhCa9AfsKTjx0C9qagqyP4eR/G4aJQUJAbTSM3TK4tLHvfK2qZxaECnaG9i1kQlnQw==","signatures":[{"sig":"MEUCIDxJ3MzQS6Aavx7guxsoO0Sw4QGSzCI/XIDqmUqydDVQAiEA0+xrrrRHM1Ji0+Sg+kzwMR2HfJ2vwOTwVojejbx/IKg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103217},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"3f7dcfd9bdb22f4c6af7701b81c785e586183d17","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.0","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.1.1_1752236840579_0.689754234409657","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"hackages","version":"0.1.11","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.1.11","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"47b312d5f8f3fae29c0d3a4a2d8dd932ade906fe","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.1.11.tgz","fileCount":38,"integrity":"sha512-oGFDTZzfo4/Y1Xrux+IbAmnfrq9RLqmUyQb45sxUE1SCcHht2ckmi50/Aq7VGuf+tcMdrire/dTqFaF7pHHxnA==","signatures":[{"sig":"MEQCIBE5tyOOmmDTpYIR4byz2tQaeNq43aU/NQCLa4Io+TdvAiA0fB/jQWfAva0aya5XDgsyQ51l58C0DsioUAGy9Tp2OQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103289},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"74deee274ac23e79994c086fe7ae2250cbaa2efc","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.0","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.1.11_1752237383509_0.4752819838070894","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"hackages","version":"0.1.12","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.1.12","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"ad924e0826ead26e5dec6613db977def7dcbba96","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.1.12.tgz","fileCount":38,"integrity":"sha512-lScaWsZtuS2yuSsfoerJRbiza9fuTwKGKf8TCh+sCxtGXPPIN2o+dGJHLTKYVenCzSriIUxaaF/3tWcwJwukSw==","signatures":[{"sig":"MEQCIAqhqTC5dQdHJwCcXaYwv1gh6RVxXa9N5ij7gJP2EeVhAiBUiWjDqRk9pXI4cD+bqMIRZps+Q5wWBPUTgpyL8uwJDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103289},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"78f8748d226bef15f98dad310cde3d35ff985e74","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.0","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.1.12_1752240650277_0.32649616775297674","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"hackages","version":"0.1.13","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.1.13","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"06e5d95f000da3b3536b0d4cde73e12b4a9055fe","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.1.13.tgz","fileCount":38,"integrity":"sha512-tH3maV5hZYkkp4pDZ+XM/PPxVmzQGo4Oz2F75/hodac4CIxAv0iSQI/kF3YPL6kdyLiwPdGSvpvMIOi/0kA7pg==","signatures":[{"sig":"MEUCIQCdx3cSNOoc0fBdsHdsw/SGW06B+ZI5L1A5tWLSEuUzMQIgEWgfAb9+JGLj30W3/5WyMDBFUXm5V9tm9yExNNL6IV4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103221},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"18639be677bbe4875963b69d59320b479c7dc52a","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.0","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.1.13_1752241004081_0.09243651812814768","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"hackages","version":"0.1.14","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.1.14","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"ec3a128369cf2cf3765e3d4b5032fe72cf158829","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.1.14.tgz","fileCount":38,"integrity":"sha512-/I0cp+xdRAw2EgTrIptXVm+1sRfIg5LZJDaCulyhRrwIMIWsr8jAdyI0yO9VSNPOIkhoa0YoPTJSoRLAqWx2qg==","signatures":[{"sig":"MEYCIQCtF8TZTP7x2zVPFtVwaqwhfU524MAZEckw+x2lLZVOtwIhAPCc6wplzcsRpOA9cP1GooaNloolVR9d9krBunkiNoJQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103221},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"50eff04440fe6123c51367f227a714be8da9523b","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.0","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.1.14_1752261539605_0.7468899601489498","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"hackages","version":"0.2.0","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.0","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"90b4357cfc102e34618e835e5ca2a2c494b6436b","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.0.tgz","fileCount":40,"integrity":"sha512-uI1p4KdWsxciYO22nJzkOoy7w+6FJgzJ5Gjcqkck+zsPcbZGs3wMLts14nSwMgM2KXP9MM9D7LeS5H0eOZjWCQ==","signatures":[{"sig":"MEUCIQC5ajFi66ub6KkLJI5UW7QP9bAOXpPfFLJ+BxN5MLH7JQIgRNx3PlDLfeyYJK0W+bNoGfk5/1ljbX/jdn6eJE9EZtk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114363},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"534d7bd60ce731c4835e663c83942494bb787134","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.0_1752446811874_0.9640777404085143","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"hackages","version":"0.2.1","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.1","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"c78ccf720551e0f1695fd61f19f414f39f62f1d5","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.1.tgz","fileCount":45,"integrity":"sha512-oaAqC+eG8w+T7Mjt6t0T+7S94ci2aQrj6GflCL23U+xP726slSOcAce4wRbfkFD8lXEs+n1XIeSqgjlQZVghZA==","signatures":[{"sig":"MEYCIQDLOYEazuqJaP6WClmvAce4/0q/Q83+thK+Wd2eVFS/CgIhAL1xIqGrc1TC4fDsshXqfbp+IQUYlqEACt+4dNqk2Ayp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119076},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"5e80d5c24366814fde6ebeb0945833e0edecdfaa","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.1_1752584210591_0.9874432848003598","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"hackages","version":"0.2.2","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.2","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"359675c6924a8ae20e79a0ff788439e40d7cd8cf","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.2.tgz","fileCount":45,"integrity":"sha512-nvYtFFGnOtaeuN4MoHzJFwJk1qYjY8sacrSpHlZMIA3s4uPKSr8nSPOZVStg6iy1BF+tpwo3NOuX5OZ7amHa4A==","signatures":[{"sig":"MEYCIQCxf3931iu/p58E8AZUND4gx1TntUWlm6W/b2NFgnhdEwIhAKVigYAKaztZIKfPgjjlSKBtbm/4+2T9CGXfTRJkjcWW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119151},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"7684b8d526946d399128abd9eee6bb29e6cfc93a","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.2_1752586854099_0.8778443789790793","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"hackages","version":"0.2.3","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.3","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"0950ca51800f365121a8db53a8a6d0160520db77","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.3.tgz","fileCount":45,"integrity":"sha512-LdzDqsR35tEB+GFm6APf+RtKId/bkBf1dlTSWLF+mo0WIHa3BKimvG+exDT4QscnkdmMAbZRlCGiKFtsO6HYMQ==","signatures":[{"sig":"MEUCIQCXgLpoMh/exxEzE13FKyBzuH7/5Xp+TEfZenOWVTUXZwIgDMPwfrUDePCQCGTQG5KBCXCCVhYLGntYPKDMvNzjzJk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119141},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"9e36a9fd03f2b7dcd465c010d133af3737431101","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.3_1752652828107_0.34817098231877375","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"hackages","version":"0.2.4","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.4","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"d222911f3d0c5d3bd83b048589ae13ab16fca9b4","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.4.tgz","fileCount":45,"integrity":"sha512-h2LrklifFTHGyniGiv45wBo2K7U16OcWaJ5sq0lTVR6+s2ZBPmxpkxA0T595V9SQ00je9XpvAPgBAn9x3skJzg==","signatures":[{"sig":"MEUCIHN2QdBN+UPBGnrO/xqzHgJ/5EHxrW1jhOPckKH8bFhYAiEAzaCoqXIHikFlVlebjoG0JAqTHANri7M0JQvrudPQR80=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117938},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"98446c6b83f27d16efa3eaa7537c96e65277d176","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.4_1752669999323_0.8531272385405553","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"hackages","version":"0.2.5","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.5","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"811527961c930050027e63633a7abae1611e076c","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.5.tgz","fileCount":45,"integrity":"sha512-SRALEsOWjwmxCQ07o3/n8UbuohanGxZVrRgCKQ2v9rYYBRYa7nqUNUZf97O9oNO6Xh3gmQrD7AfBP0tK7Xyerw==","signatures":[{"sig":"MEYCIQCWrN5kevdxOc5LyIV7OHCwbPIrSlOJLhDu4tg0CgzrJAIhAJuwFWgqmVbeHpLKnM4KIkoCdTjuWOI5F+GxaIP8DxYA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117921},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"3849f2de587dd6b00815dca33de45be91e094b3b","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.5_1752672475903_0.07159313018360991","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"hackages","version":"0.2.6","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.6","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"55fa41754595498d7aecd861146afb10b44c6fdc","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.6.tgz","fileCount":45,"integrity":"sha512-y89T6x1yfCkrwPiknOOuQFE1yF50zxT+H0B0fyRll6yKhMqjVVgUvw34T5RhgqwXAx4MWse18LQbcMgW2FolQA==","signatures":[{"sig":"MEQCIHcJ8vJNyx6eBBgdjSDeJznH2j4DyvXkTXQVGqKqxN8eAiBumCBfu5oZy6csEiT0ir5cqvoKvaX+rx2LZgW6c7SSew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117654},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"9f06092c0c7f887a14c9fb9fb3a2d9f273c6ba5a","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.6_1753092769660_0.1818262653199485","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"hackages","version":"0.2.7","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.7","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"eba8402e08e516cf64fedf010fe822ec1575cde4","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.7.tgz","fileCount":45,"integrity":"sha512-A/LToidB01gFFoMBK3kCbFXTm6WElKyj43xsrPndjr9bxZRjNQyPVSeuEJ72kiNzatDls5/0o3sWbvd12oumpA==","signatures":[{"sig":"MEQCIGuxRothFqZ4G5F75W7mFaTWMCSGNKsdL9+x/qYXS3kFAiBRYdLuqlC8TxohqkYs8GbV/yiUiRSGzuI8RTfhhvIXnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117620},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"9f06092c0c7f887a14c9fb9fb3a2d9f273c6ba5a","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"22.17.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.7_1753099109063_0.6233721932198071","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"hackages","version":"0.2.8","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.8","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"ad37f98c0c7739fd71e5b14626fb43bb23048ec4","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.8.tgz","fileCount":45,"integrity":"sha512-b8bDA2/6/qT3EKG8EX8o6hx7kqZqlxXkOiJJcg2GRuNndVuh6tU0fdg9NEuB3PSvco/knaoN7N4PCM4PhJhXuA==","signatures":[{"sig":"MEQCIGidfuv4NnePBOHN4yX6HPjxvfBJI6EisgQJlpaodJ7PAiAbqG9kCfO75ElGls9uKNCe31A4uD9bu++9U6LYM3S3cA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118399},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"5869dbbaa85a97cc605fdcad2504d5f900c156c2","scripts":{"dev":"tsx index.ts","hckg":"tsx index.ts","test":"npm i && vitest run","build":"tsc","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"11.4.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"24.4.1","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.8_1756732357610_0.8784676708725283","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"hackages","version":"0.2.9","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.2.9","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"14d38509a0f7a81a7b3a975ae4d5c4272c069dcd","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.2.9.tgz","fileCount":44,"integrity":"sha512-KdY1pzw/tcvDKr4KJST6cPKD9VFAltUqbia658AE1ZYYxML70aK4kbPpzNJ5fDPmWkyCoreMTYS0rjEygL87Mg==","signatures":[{"sig":"MEUCIEPzefrisftUKRLuMaG19FmWxSeSB36uViyCTll5zWiHAiEA3gssWF3NBdsiWosCe+i00zMAz887JcgiLk+B9cD259A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124610},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"6d47c8e858ed758cd87415125961eb082d134ff3","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"11.6.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"24.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.2.9_1762832361030_0.19625955902186498","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"hackages","version":"0.3.0","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.3.0","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"53941ea9ee6f3663c72f7a27f5b4320a2e91353f","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.3.0.tgz","fileCount":44,"integrity":"sha512-Dt150uBG89AAUlUUjGcGOFjgjBvRvvcAXFvvY6yXHbJ1AJwDm3Y3Wsigp86OIM2beVea1xjS9eRswQFDlzhjgA==","signatures":[{"sig":"MEUCIQD+zby2GBg3V0VkQO43duVlsvqbIQtkyhvOF18RiDrgVgIgSCwz1R4CSjje+FjM2fPi8JgAvn6SLIG+zprJ2rYyElA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124039},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"791445d1cfeb997465442f8a1a1f1eeb4709fd63","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"11.6.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"24.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.3.0_1763049809502_0.3479763704362393","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"hackages","version":"0.3.1","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.3.1","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"a30c46b62cd82bc051fb29819c8825d9164ac6a0","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.3.1.tgz","fileCount":44,"integrity":"sha512-ZQg+hI2Dao+FSb8lCFdKTuIH685ZRHo3N1QSlwv07bCcTx/5OML+u6TLf1iX7lPz+jr40pdk9IcuETDPtuGG1w==","signatures":[{"sig":"MEQCIDXQmD4tmdNbaxGNek/9sO96SHfxkv4iQgp9ICE31BJZAiAV3k32lGvQYi31LVf6rg54ubWnZJ7IDLxKdhGRCAYRHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127335},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"8b0e86f09e98fa471588aeae742e0fb9ba020b42","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"11.6.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"24.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.3.1_1763088023797_0.11657624885864704","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"hackages","version":"0.3.2","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","_id":"hackages@0.3.2","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"bin":{"hackages":"dist/index.js"},"dist":{"shasum":"d332e15b80781118bb7be405141b131e11957f8d","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.3.2.tgz","fileCount":44,"integrity":"sha512-fLXJCxIGZ/S/hKYKfPoki5RPVuYRnIv8VtkdVBCxdIRMnWWtpO4KlJfgDIDsKWz5q4vEbg354ZEiBXepInCQ5Q==","signatures":[{"sig":"MEYCIQDgWjGqveQNHkWbvc/cPYEk3rsMPbGJd1WGblYz+RfZ7wIhALX3HQp133aoCE8qMIKUujaxVyReuFIQDu6XXdE3hQ5n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129845},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"e10f601248dcd3590942cbf70221ec149ff9871b","scripts":{"dev":"tsx index.ts","test":"npm i && vitest run","build":"tsc","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"repository":{"url":"git+https://github.com/hackages/hackages-cli.git","type":"git"},"_npmVersion":"11.6.2","description":"CLI tool for learning software development concepts through test-driven development","directories":{},"_nodeVersion":"24.11.0","dependencies":{"open":"^10.1.2","uuid":"^11.1.0","axios":"^1.9.0","chalk":"^5.4.1","dotenv":"^16.5.0","vitest":"^3.2.1","express":"^5.1.0","prompts":"^2.4.2","commander":"^14.0.0","@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","ts-node":"^10.9.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hackages_0.3.2_1763100735482_0.978762523671711","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"hackages","version":"0.4.0","description":"CLI tool for learning software development concepts through test-driven development","type":"module","main":"dist/index.js","bin":{"hackages":"dist/index.js"},"scripts":{"build":"tsc","dev":"tsx index.ts","test":"npm i && vitest run","learn":"tsx index.ts","continue":"tsx index.ts --continue","prepublishOnly":"npm run build"},"keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"author":{"name":"007@hackages.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hackages/hackages-cli.git"},"homepage":"https://github.com/hackages/hackages-cli#readme","bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"dependencies":{"@types/dotenv":"^6.1.1","@types/express":"^5.0.3","@types/prompts":"^2.4.9","axios":"^1.9.0","chalk":"^5.4.1","commander":"^14.0.0","dotenv":"^16.5.0","express":"^5.1.0","open":"^10.1.2","prompts":"^2.4.2","uuid":"^11.1.0","vitest":"^3.2.1"},"devDependencies":{"@types/node":"^20.0.0","ts-node":"^10.9.0","tsx":"^4.19.2","typescript":"^5.0.0"},"gitHead":"fc3777a13cfadacd1664cb82f206ad40c7d737a5","types":"./dist/index.d.ts","_id":"hackages@0.4.0","_nodeVersion":"24.11.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-8IstLVztHc4Hjrnkid4zlqB+Cdz3v+Tq8ChoU6+ePHYzoD5HUhvb/XSMYlyWrf6s8Lzgd4L1WIO/UzxoXb95cA==","shasum":"96f869504609dea93604328520080be2c7440aaa","tarball":"https://registry.npmjs.org/hackages/-/hackages-0.4.0.tgz","fileCount":46,"unpackedSize":141893,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDMfiJVMEVRTI/HWbz/31IDtUO0ZQlnkRK9LSZArwq3xAiA2j8Sqo+Tt2J8fjrsaqwMpHI9SqUOCCe7942hiI6ENrg=="}]},"_npmUser":{"name":"davyengone","email":"davy@hackages.io"},"directories":{},"maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/hackages_0.4.0_1764775454467_0.8871317385073929"},"_hasShrinkwrap":false}},"time":{"created":"2016-04-03T20:40:09.824Z","modified":"2025-12-03T15:24:14.849Z","0.0.1":"2016-04-03T20:40:09.824Z","0.0.2":"2016-04-06T06:38:16.342Z","0.0.3":"2016-04-07T06:45:11.709Z","0.0.4":"2016-04-07T06:53:43.631Z","0.0.5":"2016-04-12T11:16:00.841Z","0.0.6":"2016-04-16T11:42:56.365Z","0.0.7":"2016-04-22T12:19:12.178Z","0.0.8":"2016-05-22T10:15:50.655Z","0.0.9":"2016-10-25T06:15:29.436Z","0.0.10":"2016-10-25T12:52:06.045Z","0.1.0":"2017-02-22T13:23:57.987Z","0.1.1":"2025-07-11T12:27:20.759Z","0.1.11":"2025-07-11T12:36:23.728Z","0.1.12":"2025-07-11T13:30:50.482Z","0.1.13":"2025-07-11T13:36:44.252Z","0.1.14":"2025-07-11T19:18:59.771Z","0.2.0":"2025-07-13T22:46:52.082Z","0.2.1":"2025-07-15T12:56:50.765Z","0.2.2":"2025-07-15T13:40:54.298Z","0.2.3":"2025-07-16T08:00:28.276Z","0.2.4":"2025-07-16T12:46:39.495Z","0.2.5":"2025-07-16T13:27:56.079Z","0.2.6":"2025-07-21T10:12:49.852Z","0.2.7":"2025-07-21T11:58:29.248Z","0.2.8":"2025-09-01T13:12:37.808Z","0.2.9":"2025-11-11T03:39:21.205Z","0.3.0":"2025-11-13T16:03:29.701Z","0.3.1":"2025-11-14T02:40:24.037Z","0.3.2":"2025-11-14T06:12:15.673Z","0.4.0":"2025-12-03T15:24:14.660Z"},"bugs":{"url":"https://github.com/hackages/hackages-cli/issues"},"author":{"name":"007@hackages.com"},"license":"MIT","homepage":"https://github.com/hackages/hackages-cli#readme","keywords":["cli","learning","tdd","test-driven-development","javascript","typescript","vitest","testing","education","coding","tutorial"],"repository":{"type":"git","url":"git+https://github.com/hackages/hackages-cli.git"},"description":"CLI tool for learning software development concepts through test-driven development","maintainers":[{"name":"davyengone","email":"davy@hackages.io"}],"readme":"# Hackages CLI\n\n> 🎯 Learn software development concepts through test-driven development\n\nHackages is an interactive CLI tool that helps developers learn new concepts by generating personalized coding exercises using AI-powered test-driven development.\n\n## ✨ Features\n\n- 🤖 **AI-Powered Exercise Generation** - Creates custom learning exercises based on your goals\n- 🧪 **Test-Driven Learning** - Learn by making tests pass, not by reading tutorials\n- 🎯 **Personalized Content** - Adapts to your skill level and preferred programming language\n- 🔍 **Smart Technology Detection** - Automatically detects technology from your learning goal\n- ✅ **Technology Confirmation** - Always confirms your technology choice for clarity\n- 📋 **Smart Code Review** - Get feedback on your implementations\n- ⚡ **Interactive CLI** - Modern interface with arrow key navigation\n- 🔄 **Iterative Learning** - Run tests and get feedback in a continuous loop\n- 📦 **Repository Templates** - Clones technology-specific templates with proper project structure\n- 🎉 **Onboarding Experience** - New users get a guided introduction with 3 simple options\n\n## 🚀 Installation\n\nInstall globally via npm:\n\n```bash\nnpm install -g hackages \n```\n\nor \n\n```bash\nnpx hackages\n```\n\n\n\n\n## 📖 Quick Start\n\n### For New Users (First Time)\n\nAfter installation, simply run:\n\n```bash\nhackages\n```\n\nYou'll see a welcoming introduction explaining what Hackages is about, followed by 3 simple options:\n\n1. **JavaScript Array Methods** - Learn how to use map, filter, and reduce\n2. **TypeScript Functions** - Learn function types and interfaces  \n3. **Surprise Me!** - Let Hackages pick something fun for you\n\nChoose one and get your first exercise instantly - no authentication required!\n\n**Example Onboarding Flow:**\n```bash\n$ hackages\n🎉 Welcome to Hackages! 🎉\n==================================================\n🚀 Learn software development through hands-on coding challenges\n🧪 Write code, run tests, get instant review and feedback\n🎯 Master concepts by doing, not just reading\n==================================================\n\n✨ What you'll get:\n  • A coding challenge with clear instructions\n  • Test cases that guide your implementation\n  • AI-powered feedback on your code\n  • A fun, interactive learning experience\n\n🎯 Ready to try? Pick one:\n\n? Choose your first exercise: › 1. JavaScript Array Methods\n\n🎉 Great choice!\nYou'll be learning: JavaScript Array Methods\n\n🔄 Generating your first exercise...\n\n🎉 Your first exercise is ready!\n==================================================\n📁 Files created:\n  ✓ tests/exercise.spec.js (Your test cases)\n  ✓ src/exercise.js (Your implementation file)\n\n🚀 Next steps:\n1. Read the instructions and test file to understand what to implement\n2. Open src/exercise.js and start coding\n3. Run 'npx hackages test' to validate your implementation\n4. Run 'npx hackages review' to get feedback on your code\n\n💡 Want to continue learning?\nRun 'npx hackages' again to create more exercises and track your progress!\n```\n\n### For Returning Users\n\nIf you've used Hackages before and are logged in, you'll get the full personalized experience with custom learning goals and progress tracking.\n\n### Available Commands\n\n```bash\n# Start learning (default) - creates new exercise\nhackages\n\n# Continue working on existing exercise (interactive mode)\nhackages continue\n\n# Run tests for your current exercise\nhackages test\n\n# Get code review and feedback\nhackages review\n\n# Login with GitHub account\nhackages login\n\n# Logout from your account\nhackages logout\n\n# Show help\nhackages --help\n```\n\n## 🎮 How It Works\n\n### 1. Start Learning\n\nRun `hackages` and answer a few questions:\n\n- What concept do you want to learn? (e.g., \"JavaScript arrays\", \"recursion\", \"async/await\")\n- Confirm your technology choice (even if detected from your goal)\n- What's your skill level? (Beginner/Intermediate/Advanced)\n- What's your motivation?\n- How much time do you have?\n- Login with GitHub account (automatic after goal collection)\n\n### 2. Repository Template Cloning\n\nHackages automatically detects your preferred technology and clones the appropriate template repository:\n\n- **TypeScript**: `git@github.com:hackages/ts-template.git` (SSH) or `https://github.com/hackages/ts-template.git` (HTTPS)\n- **JavaScript**: `git@github.com:hackages/js-template.git` (SSH) or `https://github.com/hackages/js-template.git` (HTTPS)\n- **GoLang**: `git@github.com:hackages/go-template.git` (SSH) or `https://github.com/hackages/go-template.git` (HTTPS)\n- **Python**: `git@github.com:hackages/python-template.git` (SSH) or `https://github.com/hackages/python-template.git` (HTTPS)\n\n\nThe system detects your Git protocol preference (SSH vs HTTPS) and uses the appropriate URL.\n\n### 3. Exercise Files\n\nHackages creates exercise files in the cloned repository:\n\n- `tests/exercise-1.spec.ts` - Test cases that define what to build\n- `src/exercise-1.ts` - Empty implementation file for you to code\n- `instructions/exercise-1.mdx` - Detailed instructions and learning objectives\n\n### 4. Test-Driven Development\n\n1. Navigate to your exercise directory: `cd <exercise-name>`\n2. Read the instructions and tests files to understand requirements\n3. Write code to make tests pass\n4. Run `npx hackages test` to check your progress\n5. Get feedback with `npx hackages review`\n\n### 5. Continue Learning\n\nUse `hackages continue` to access the interactive menu:\n\n- **🧪 Run Tests**: Validate your implementation\n- **📋 Code Review**: Get feedback and suggestions\n- **🚀 Next Learning**: Continue with recommended learning steps (appears after code review)\n- **👋 Exit**: End your learning session\n\nThe \"Next Learning\" option only appears if you have previous feedback from a code review, and it shows up to 3 AI-recommended learning steps plus an option to write your own goal.\n\n## 🎯 Example Learning Session\n\n```bash\n$ hackages\n🎯 Hackages Lab\n==================================================\n\n✔ 💡 What software development concept would you like to learn today? › TypeScript map function\n✅ Detected language: TypeScript\n\n✔ 🛠️  Please confirm your technology choice: › TypeScript (Your selection)\n✔ 📊 Select your skill level: › Beginner\n\n🔐 You'll be logging in with your GitHub account to track your progress.\nPress Enter to continue...\n\n📥 Cloning TypeScript template repository...\n✅ Repository template cloned to: typescript-map-function\n\n🎉 Your learning exercise is ready!\n📁 Repository cloned:\n  ✓ typescript-map-function/ (Your exercise directory)\n  ✓ typescript-map-function/tests/exercise-1.spec.ts (Your test cases)\n  ✓ typescript-map-function/src/exercise-1.ts (Your implementation file)\n  ✓ typescript-map-function/instructions/exercise-1.mdx (Exercise instructions)\n\n🚀 Next steps:\n1. cd typescript-map-function (navigate to your exercise directory)\n2. Read the instructions and test file to understand what to implement\n3. Open src/exercise-1.ts and start coding\n4. Run 'npx hackages test' to validate your implementation\n5. Run 'npx hackages review' to get feedback on your code\n\n$ cd typescript-map-function\n$ npx hackages test\n🧪 Running tests...\n📁 Running tests in: typescript-map-function\n❌ 2 tests failed\n\n$ hackages review\n📋 Code Review\n==================================================\n\n📁 Files to be reviewed:\n  ✓ exercise-1.ts\n  ✓ utils.ts\n\nGreat start! Here's some feedback...\n\n🎉 Code review completed!\n📝 Feedback saved to: feedback/exercise-1.mdx\n🌐 HTML page generated: feedback-exercise-1.html\n💡 Opening feedback page in browser...\n\n==================================================\n🚀 Continue Your Learning Journey\n==================================================\nChoose your next learning step:\n\n1. Explore Different Number Types\n2. Learn About Function Overloading\n3. Error Handling\n4. Generic Functions\n5. Advanced TypeScript Features\n6. Write your next learning goal\n\n🔄 Generating your next exercise...\n\n🎉 Your next exercise is ready!\n📁 Next exercise created:\n  ✓ tests/exercise-2.spec.ts (Your test cases)\n  ✓ src/exercise-2.ts (Your implementation file)\n  ✓ instructions/exercise-2.mdx (Exercise instructions)\n```\n\n## 📋 Smart Code Review\n\nGet feedback on your implementations with multiple output formats:\n\n- **Multi-File Review**: Reviews all files in the `src/` directory automatically\n- **Terminal Display**: Beautiful formatted feedback in the terminal\n- **Template Storage**: Feedback saved to `feedback/exercise-1.mdx` in your exercise directory\n- **HTML Page**: Beautiful web page generated as `feedback-exercise-1.html`\n- **Backup Storage**: Feedback also saved to `~/.hackages/` for safekeeping\n- **Learning Continuation**: Hackages suggests next learning steps and generates the next exercise\n\n## 🛠️ Supported Technologies\n\n- **JavaScript** - Full support with Vitest\n- **TypeScript** - Full support with type checking\n- **Python** - Coming soon\n- **Java** - Coming soon\n\n## 📦 Repository Templates\n\nHackages uses technology-specific repository templates that provide:\n\n- **Proper project structure** with `src/` and `tests/` directories\n- **Pre-configured testing framework** (Vitest for JS/TS)\n- **TypeScript configuration** (for TypeScript projects)\n- **Package.json** with necessary dependencies\n- **Git ignore files** and other project setup\n\n### Template Repositories\n\n- **TypeScript**: [hackages/ts-template](https://github.com/hackages/ts-template)\n- **JavaScript**: [hackages/js-template](https://github.com/hackages/js-template)\n\nThe system automatically detects your Git protocol preference:\n\n- **SSH**: Uses `git@github.com:hackages/<template>.git`\n- **HTTPS**: Uses `https://github.com/hackages/<template>.git`\n\n## ⚙️ Requirements\n\n- Node.js 18+\n- npm or yarn\n- Git (for repository cloning)\n- [Anthropic API Key](https://console.anthropic.com/) (for AI features)\n- GitHub account (for authentication)\n\n### Authentication\n\nHackages uses GitHub OAuth for user authentication:\n\n```bash\n# Login with GitHub (opens browser)\nhackages login\n\n# Check if you're logged in\nhackages --help  # Shows your username if logged in\n\n# Logout\nhackages logout\n```\n\nThis enables personalized learning experiences and progress tracking.\n\n## 🎨 CLI Interface\n\nHackages features a modern CLI interface with:\n\n- 🎯 Arrow key navigation (like Vitest)\n- 🎨 Colored output and clear formatting\n- 📝 Interactive prompts with validation\n- ⚡ Fast and responsive design\n\n## 📄 License\n\n© [Hackages](https://hackages.com)\n\n---\n\n**Happy Learning! 🚀**\n\n_Built with ❤️ by the Hackages team_\n\n---\n","readmeFilename":"README.md"}