{"_id":"@amphore-dev/architect","_rev":"8-27397b7c708662f8f956018968c6d7bd","name":"@amphore-dev/architect","dist-tags":{"latest":"1.3.1"},"versions":{"1.0.0":{"name":"@amphore-dev/architect","version":"1.0.0","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Simeon-Ferrara","email":"pixono26@gmail.com"},"license":"MIT","_id":"@amphore-dev/architect@1.0.0","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"e286adf81a397ea0ce5fc7f3aa69c565aae73c0f","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.0.0.tgz","fileCount":100,"integrity":"sha512-y+QFGOQn9zhoR/018UlMaBLb4Do89k5evp7sOwMjMlk9fzc2gQ1NOjgfuX+OVWgIKHhsM4ahn+TtBohrZlbklA==","signatures":[{"sig":"MEUCIQCL5KptYwHt68nC9U4Iu9z7nncKLClGMISvwdFcnCJtKgIgPdVw+dN/6smmhs/eopMEvPsekqOX3IBpMsL+6/camVQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":150775},"main":"dist/index.js","gitHead":"873597717ea14da1a2fbea893806e8732236dbdc","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.7.0","description":"A CLI tool to generate React components","directories":{"example":"example"},"_nodeVersion":"20.14.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.0.0_1726599428648_0.23428582818122856","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@amphore-dev/architect","version":"1.1.0","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Simeon-Ferrara","email":"pixono26@gmail.com"},"license":"MIT","_id":"@amphore-dev/architect@1.1.0","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"03cde39f678b931728dda769cb7743a849234f54","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.1.0.tgz","fileCount":90,"integrity":"sha512-klgSlKTQNAUERMP0KLvTxSFnXWJzt1VT8Ekhr8QNkAor5EdAtGMMvmMwqJwNhuQ7dZZv3dw2l8gaenEXgMKdxQ==","signatures":[{"sig":"MEUCIFaxEaJOhXAy4k50wt3ADtsv7NSgk739coHe9dHpuXv2AiEA9NaUCsD2+LSwztQcXe4ZVzh9p12r6K21afel9MEfucM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177765},"main":"dist/index.js","gitHead":"35c265c8831e2307f25a6b52d5f77c54f52450fe","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.8.2","description":"A CLI tool to generate React components","directories":{"example":"example"},"_nodeVersion":"20.17.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@amphore-dev/architect-plugin-react":"^1.0.4","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.1.0_1726842178639_0.4978434988678395","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@amphore-dev/architect","version":"1.1.1","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Simeon-Ferrara","email":"pixono26@gmail.com"},"license":"MIT","_id":"@amphore-dev/architect@1.1.1","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"7832e984d528cc611a7443f31da9564bf0d1c367","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.1.1.tgz","fileCount":97,"integrity":"sha512-yOSzKaX0EuP6zxo1A2wAsFwaKT3idtvPdp10J6BvifAGRUTwyMKPN/+0cFWduVIu/iY9hzkeaEcAeOVrPW0D/w==","signatures":[{"sig":"MEUCIQChApPGoMSqfL0P61ZojK3wITiZRmLkvUQUHUvr2xwEpQIgav/9LslLrowb8zCT+vXB3gHRkf6U9Zh8i1ywjtajXUk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180441},"main":"dist/index.js","gitHead":"160a4330536c1c148e28a70a2babc85725595dea","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.8.2","description":"A CLI tool to generate React components","directories":{"example":"example"},"_nodeVersion":"20.17.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@amphore-dev/architect-plugin-react":"^1.0.4","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.1.1_1726871719568_0.5716058387411149","host":"s3://npm-registry-packages"}},"1.1.2":{"name":"@amphore-dev/architect","version":"1.1.2","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Simeon-Ferrara","email":"pixono26@gmail.com"},"license":"MIT","_id":"@amphore-dev/architect@1.1.2","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"dacfb8048126f288deb94c10125058a14404bfc1","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.1.2.tgz","fileCount":118,"integrity":"sha512-Jain+4bIraHIHE1OSUz6LYsufSu9waGAm6W5/PAAmd0nQcrjCAU2F6lIxvlG/gNvkUIHw154xq7IWwLtoGmdgQ==","signatures":[{"sig":"MEYCIQDAZetpK8yDBa4yL8Ij3LUFWdTtTfnmD9KGuH7h1/J6IAIhAIdSyoqnYT/CEQ0U1uy9SpX+L2VZAbn/KYa32iVUxc5c","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":199407},"main":"dist/index.js","gitHead":"f4945200681f03ede1e8b359d5cf9966c278eadd","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.8.2","description":"A CLI tool to generate React components","directories":{"example":"example"},"_nodeVersion":"20.17.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@amphore-dev/architect-plugin-react":"^1.0.4","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.1.2_1726880591446_0.5230815357834737","host":"s3://npm-registry-packages"}},"1.1.3":{"name":"@amphore-dev/architect","version":"1.1.3","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Simeon-Ferrara","email":"pixono26@gmail.com"},"license":"MIT","_id":"@amphore-dev/architect@1.1.3","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"f45694e841669958305491858abce048b63b2bc6","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.1.3.tgz","fileCount":122,"integrity":"sha512-vgc34ch9mMH7+1rz7YdXd7vVGdD0F2vLv1UCphATtFyQEvl4Zh+j6Nxy5oaNzTY7U5Lxl/G3/ODY/OUkrPy4fw==","signatures":[{"sig":"MEYCIQDasy9ktHPAmTBptqWOaTaSbQtR4I61V2LcCjfT6cu7+QIhAJRrfJKoVGwqXETU4hHAR8dLTV2EWjUrur10LFJClYqo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1514605},"main":"dist/index.js","gitHead":"7e9e6af1a686941f979d5892f3c99ec7a570ebbd","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.8.2","description":"A CLI tool to generate React components","directories":{"example":"example"},"_nodeVersion":"20.17.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@amphore-dev/architect-plugin-react":"^1.0.4","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.1.3_1726948128974_0.4914061813456283","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@amphore-dev/architect","version":"1.2.0","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Simeon-Ferrara","email":"pixono26@gmail.com"},"license":"MIT","_id":"@amphore-dev/architect@1.2.0","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"196fd359fc35698e06e72838bcc383a60cc2e77e","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.2.0.tgz","fileCount":125,"integrity":"sha512-RXMfUZhE8FdclHENnRxwRGz21ISruyKdD8wyGUTbBgokHlfPH5Mq5OsZl7YiiWb3uzr69+wTil971fLFsqXNFw==","signatures":[{"sig":"MEQCIARCHGGhr1hNoFTfaTey5o2yCGyfMLRlZltKXxVvLXevAiA+bLP7y1f2OZycqHzF8p0bRMBzH++jM4+PH9GGSgn5xA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1518634},"main":"dist/index.js","types":"dist/declarations/index.d.ts","gitHead":"8e06405139d3f83225256814d0060e6d12a64d47","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.8.2","description":"A CLI tool to generate React components","directories":{"example":"example"},"_nodeVersion":"20.17.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@amphore-dev/architect-plugin-react":"^1.0.4","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.2.0_1726957463401_0.5625463259351451","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"@amphore-dev/architect","version":"1.3.0","keywords":["CLI","blueprint","file","folder","generator"],"author":{"name":"Amphore Dev","email":"contact@amphore.dev"},"license":"MIT","_id":"@amphore-dev/architect@1.3.0","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"homepage":"https://github.com/Amphore-Dev/Architect#readme","bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"bin":{"architect":"dist/index.js"},"dist":{"shasum":"0eabba8d0e5d7062d6f27912d316c0dc02667d62","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.3.0.tgz","fileCount":127,"integrity":"sha512-LAQ8xu+dL8fwxku3gDJp0sP4X06GrtfFiuAVSuLOs4Zo/HRfI79+DQt7MYDQSmbODqh7x6mWFD/7zveeUZ+Vdw==","signatures":[{"sig":"MEYCIQC2tMJtLQ68Wf8cYEVy3FUU/9JACAJXC1A42n/u3rBQwgIhAOBaXdlDP6X4GSOTv/3+HjFT228dXkkACf8YmnllphT6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1524686},"main":"dist/index.js","types":"dist/declarations/index.d.ts","gitHead":"215586c7af0827c786cf7ded5c40ce848c1bc523","scripts":{"lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","test":"yarn build && jest","build":"tsc && yarn copy-blueprints","start":"node dist/index.js","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*"},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"repository":{"url":"git+https://github.com/Amphore-Dev/Architect.git","type":"git"},"_npmVersion":"10.8.2","description":"A CLI tool to generate files and folders based on blueprints","directories":{"example":"example"},"_nodeVersion":"20.17.0","dependencies":{"esbuild":"^0.23.1","inquirer":"^10.1.8","commander":"^12.1.0","safe-flat":"^2.1.0","typescript":"^5.5.4","import-sync":"^2.2.2","node-color-log":"^12.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.9.1","globals":"^15.9.0","ts-jest":"^29.2.5","prettier":"^3.3.3","copyfiles":"^2.4.1","@eslint/js":"^9.9.1","@types/jest":"^29.5.12","@types/node":"^22.5.0","@types/commander":"^2.12.2","typescript-eslint":"^8.2.0","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@typescript-eslint/parser":"^8.2.0","@typescript-eslint/eslint-plugin":"^8.2.0","@amphore-dev/architect-plugin-react":"^1.0.4","@trivago/prettier-plugin-sort-imports":"^4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/architect_1.3.0_1727000866961_0.46192366182481837","host":"s3://npm-registry-packages"}},"1.3.1":{"name":"@amphore-dev/architect","version":"1.3.1","repository":{"type":"git","url":"git+https://github.com/Amphore-Dev/Architect.git"},"author":{"name":"Amphore Dev","email":"contact@amphore.dev"},"license":"MIT","description":"A CLI tool to generate files and folders based on blueprints","main":"dist/index.js","types":"dist/declarations/index.d.ts","bin":{"architect":"dist/index.js"},"scripts":{"start":"node dist/index.js","build":"tsc && yarn copy-blueprints","lint":"eslint 'src/**/*.{ts,tsx,js,jsx,json}'","lint:fix":"eslint 'src/**/*.{ts,tsx,js,jsx,json}' --fix","prettier":"prettier 'src/**/*.{ts,tsx,js,jsx,json}'","prettier:fix":"prettier 'src/**/*.{ts,tsx,js,jsx,json}' --write","copy-blueprints":"copyfiles -u 1 \"src/blueprints/**/*\" dist && chmod +x dist/blueprints/*","test":"yarn build && jest --runInBand"},"dependencies":{"commander":"^12.1.0","esbuild":"^0.23.1","import-sync":"^2.2.2","inquirer":"^10.1.8","node-color-log":"^12.0.1","safe-flat":"^2.1.0","typescript":"^5.5.4"},"devDependencies":{"@amphore-dev/architect-plugin-react":"^1.0.4","@eslint/js":"^9.9.1","@trivago/prettier-plugin-sort-imports":"^4.3.0","@types/commander":"^2.12.2","@types/jest":"^29.5.12","@types/node":"^22.5.0","@typescript-eslint/eslint-plugin":"^8.2.0","@typescript-eslint/parser":"^8.2.0","copyfiles":"^2.4.1","eslint":"^9.9.1","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","eslint-plugin-react":"^7.35.0","globals":"^15.9.0","jest":"^29.7.0","prettier":"^3.3.3","ts-jest":"^29.2.5","typescript-eslint":"^8.2.0"},"directories":{"example":"example"},"keywords":["CLI","blueprint","file","folder","generator"],"bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"homepage":"https://github.com/Amphore-Dev/Architect#readme","_id":"@amphore-dev/architect@1.3.1","gitHead":"b242e3d1fc0a1a0ca3101d449456f209dc62ac11","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-oEMl0RC+3RUKwj2BhgfFO6eAMvZ6fivmbOR+G+7TnXLXPJdMAsp45t5tP98Pe/aNeDrO3QZcwzBIgRRpDZwr2g==","shasum":"bdb6f97ee99d89cc28a4cf0a2cd5dbaea0cfe8eb","tarball":"https://registry.npmjs.org/@amphore-dev/architect/-/architect-1.3.1.tgz","fileCount":131,"unpackedSize":1524801,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCqNNYWRUzXv6fF1M4JZzrcY1Y5YJWGJgQdhljigDo4mQIgQyRotYeR6vjzJ2ZOD7wGuhL9xKJ1uhNzHFosyuUwPE0="}]},"_npmUser":{"name":"shimon42","email":"contact@amphore.dev"},"maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/architect_1.3.1_1756324438640_0.4412760033006773"},"_hasShrinkwrap":false}},"time":{"created":"2024-09-17T18:57:08.490Z","modified":"2025-08-27T19:53:59.083Z","1.0.0":"2024-09-17T18:57:08.892Z","1.1.0":"2024-09-20T14:22:58.875Z","1.1.1":"2024-09-20T22:35:19.924Z","1.1.2":"2024-09-21T01:03:11.725Z","1.1.3":"2024-09-21T19:48:49.267Z","1.2.0":"2024-09-21T22:24:23.656Z","1.3.0":"2024-09-22T10:27:47.192Z","1.3.1":"2025-08-27T19:53:58.902Z"},"bugs":{"url":"https://github.com/Amphore-Dev/Architect/issues"},"author":{"name":"Amphore Dev","email":"contact@amphore.dev"},"license":"MIT","homepage":"https://github.com/Amphore-Dev/Architect#readme","keywords":["CLI","blueprint","file","folder","generator"],"repository":{"type":"git","url":"git+https://github.com/Amphore-Dev/Architect.git"},"description":"A CLI tool to generate files and folders based on blueprints","maintainers":[{"name":"shimon42","email":"contact@amphore.dev"}],"readme":"# Architect\n\n## Introduction\n\nThis project is an npm CLI package designed to generate folders and files based on predefined blueprints and builders.\nIt supports multiple file formats and configurations for different environments such as React, Vue, Angular, PHP,\nand more.\n\n## Installation\n\nTo install this package, use the following command:\n\n```bash\nnpm install @amphore-dev/architect --global\n```\n\n## Usage\n\nTo generate something, run the following command:\n\n```bash\narchitect <type> <name>\n```\n\n### Example\n\n```bash\narchitect molecule MyComponent\n```\n\n### CLI Options\n\n-   `--config`: Path to a configuration file. (override `architect.config.json` config file if one is provided)\n-   `--output`: Specify the output directory where files should be generated.\n-   `--force`: Overwrite existing files if they already exist in the output directory.\n\n## Configuration\n\nThe CLI requires a configuration file that defines the structure and blueprint for file generation.\nThe configuration file should be named `architect.config.json` and placed in the root directory of the project.\n\n### Configuration File\n\n| Key                  | Type     | Description                                                                |\n| -------------------- | -------- | -------------------------------------------------------------------------- |\n| outputDir            | string   | The root directory where files should be generated.                        |\n| language             | string   | The language of the project. (e.g., TypeScript, JavaScript, PHP, etc.)     |\n| structure            | object   | The structure of the project.                                              |\n| blueprints           | string[] | Relative paths of blueprints for generating files.                         |\n| builders             | string[] | Relative paths of builders for constructing the file and folder structure. |\n| options              | object   | Additional options for the CLI.                                            |\n| defaultStructureItem | object   | Default options for each structure item.                                   |\n| plugins              | array    | Additional plugins for the CLI.                                            |\n\nHere is an example configuration file in JSON format:\n\n```json\n{\n\t\"outputDir\": \"src\",\n\t\"blueprints\": [\"architect/blueprints\"],\n\t\"builders\": [\"architect/builders\"],\n\t\"defaultStructureItem\": {\n\t\t\"caseFormat\": \"pascal\"\n\t},\n\t\"plugins\": [\"@amphore-dev/architect-plugin-react\"],\n\t\"language\": \"react-typescript\",\n\t\"structure\": {\n\t\t\"components\": {\n\t\t\t\"type\": \"component\",\n\t\t\t\"subdirs\": {\n\t\t\t\t\"atoms\": \"atom\",\n\t\t\t\t\"molecules\": \"molecule\",\n\t\t\t\t\"organisms\": \"organism\",\n\t\t\t\t\"templates\": \"template\"\n\t\t\t},\n\t\t\t\"generateSubdirs\": true,\n\t\t\t\"generateSubIndex\": true\n\t\t},\n\t\t\"pages\": {\n\t\t\t\"type\": \"page\",\n\t\t\t\"generateIndex\": true,\n\t\t\t\"generateSubdirs\": true\n\t\t},\n\t\t\"utils\": {\n\t\t\t\"type\": \"util\",\n\t\t\t\"prefix\": \"U\",\n\t\t\t\"generateIndex\": true\n\t\t},\n\t\t\"constants\": {\n\t\t\t\"type\": \"constant\",\n\t\t\t\"prefix\": \"C\",\n\t\t\t\"caseFormat\": {\n\t\t\t\t\"name\": \"snake-upper\"\n\t\t\t},\n\t\t\t\"generateIndex\": true\n\t\t},\n\t\t\"services\": {\n\t\t\t\"type\": \"service\",\n\t\t\t\"suffix\": \"Service\"\n\t\t},\n\t\t\"types\": {\n\t\t\t\"type\": \"type\",\n\t\t\t\"prefix\": \"T\"\n\t\t},\n\t\t\"hooks\": {\n\t\t\t\"type\": \"hook\",\n\t\t\t\"prefix\": \"use\"\n\t\t}\n\t}\n}\n```\n\nthis configuration file will generate files and folders in the following structure:\n\n```bash\nsrc/\n│\n├── components/\n│   ├── Atoms/\n│   │   ├── index.ts\n│   │   └── MyAtom/\n│   │       └── MyAtom.tsx\n│   │\n│   ├── Molecules/\n│   │   ├── index.ts\n│   │   └── MyMolecule/\n│   │       └── MyMolecule.tsx\n│   │\n│   ├── Organisms/\n│   │   ├── index.ts\n│   │   └── MyOrganism/\n│   │       └── MyOrganism.tsx\n│   │\n│   ├── Templates/\n│   ├── index.ts\n│   └── MyTemplate/\n│       └── MyTemplate.tsx\n│\n├── pages/\n│   ├── index.ts\n│   └── MyPage/\n│       └── MyPage.tsx\n│\n├── utils/\n│   ├── index.ts\n│   └── UMyUtil.ts\n│\n├── constants/\n│   ├── index.ts\n│   └── CMyConstant.ts # file content will be: CMY_CONSTANT = 'my_constant';\n│\n├── services/\n│   ├── index.ts\n│   └── MyServiceService.ts\n│\n├── types/\n│   ├── index.ts\n│   └── TMyType.ts\n│\n└── hooks/\n\t└── useMyHook.ts\n```\n\n### Structure object\n\nThe structure defines the folder and file structure of the project.\n\n| Key              | Type             | Description                                                        |\n| ---------------- | ---------------- | ------------------------------------------------------------------ |\n| type             | string           | The type of the structure. (e.g., component, page, etc.)           |\n| subdirs          | object           | Subdirectories of the structure.                                   |\n| generateDir      | boolean          | Generate a directory for the structure item                        |\n| generateIndex    | boolean          | Generate an index file for the structure item                      |\n| generateSubdirs  | boolean          | Generate subdirectories for the structure item                     |\n| generateSubIndex | boolean          | Generate an index file for the structure item                      |\n| prefix           | string           | Prefix for the name of the generated files.                        |\n| suffix           | string           | Suffix for the name of the generated files.                        |\n| caseFormat       | string or object | Case format for the name of the generated folders/files/components |\n| language         | string           | The language of the item. (e.g., TypeScript, JavaScript, PHP)      |\n| extensions       | string or object | The extensions of the generated files.                             |\n\n### Case Format\n\nThe case format can be a string or an object. If it is a string, it should be one of the following:\n\n-   `camel`\n-   `pascal`\n-   `kebab`\n-   `kebab-upper`\n-   `snake`\n-   `snake-upper`.\n\nIf it is an object, it should have the following properties: (each property is optional)\n| Key | Type | Description |\n| ---- | ------ | ---------------------------------- |\n| name | string | The name of the case format to use. |\n| file | string | The case format for file names. |\n| folder | string | The case format for folder names. |\n\n### Extensions\n\nThe extensions key specifies the file extensions for the generated files. It can be a string or an object.\nIf it is a string, it should be the file extension (e.g., `tsx`, `js`, `php`, etc.).\n\nIf it is an object, it should have the following properties: (each property is optional)\n| Key | Type | Description |\n| ---- | ------ | ---------------------------------- |\n| default | string | The default file extension. |\n| index | string | The file extension for index files. |\n\n### Language\n\nThe language key specifies the language of the project. It is used to determine the files used to generate items.\n\nLanguage support are provided by plugins. The default language is `javascript`.\n\n### Default Structure Item\n\nThe default structure item defines the default options for each structure item.\nIf a structure item does not have a specific option, it will use the default option.\n\n## Blueprints and Builders\n\nBlueprints and builders are the core components of the CLI. They define the templates and logic for generating files and folders.\n\n```bash\n# Example Directory Structure\n\n├── src/\n└── architect/\n\t├──blueprints/\n\t│\t│\n\t│\t├─ react/\n\t│\t│   ├── utils.bp.js\n\t│\t│   ├── page.bp.js\n\t│\t│   │\n\t│\t│   ├-─ typescript/\n\t│\t│   │    ├── atoms.bp.tsx\n\t│\t│   │    └── components.bp.tsx\n\t│\t│\t│\n\t│\t│\t└-- native/\n\t│\t│\t     ├── components.bp.js\n\t│\t│\t     │\n\t│\t│\t     └-─ typescript/\n\t│\t│\t    \t  ├── atoms.bp.tsx\n\t│\t│\t    \t  └── components.bp.tsx\n\t│\t│\n\t│\t└── vue/\n\t│\t\t├── components.bp.vue\n\t│\t\t└── page.bp.vue\n\t│\n\t└──builders/\n\t\t├─ default.builder.ts\n\t\t│\n\t\t└─ react/\n\t\t     ├── default.builder.ts\n\t\t     ├── atom.builder.ts\n\t\t\t │\n\t\t     └── typescript/\n\t\t     \t└── default.builder.ts\n```\n\nThe name of the blueprint file should be in the following format: `<type>.bp.<ext>`, where `<type>` is the type of the blueprint\n(e.g., component, page, etc.), and `<ext>` is the file extension (e.g., tsx, php, etc.).\n\n### Blueprints\n\nBlueprints are templates for generating files and folders. They are organized into different categories\nbased on the framework or language (e.g., React, Vue, PHP, etc.).\n\nBlueprints can contain placeholders that will be replaced with the actual values during the generation process.\n\n#### Available Placeholders\n\n| Placeholder | Description                        |\n| ----------- | ---------------------------------- |\n| `__NAME__`  | The name of the component or file. |\n\n#### Example Blueprint\n\n#### _React Blueprint (TypeScript)_\n\n```tsx\n// components.bp.tsx\nimport React from \"react\";\n\ninterface I__NAME__Props {}\n\nexport const My__NAME__: React.FC<I__NAME__Props> = () => {\n\treturn <div>Hello, React!</div>;\n};\n```\n\n### Builders\n\nBuilders are responsible for constructing the file and folder structure based on the blueprints and configuration.\nThey ensure that the correct templates are applied during the generation process.\n\n#### Example Builders\n\n#### _Default Builder_\n\n```ts\n// default.builder.ts\n\nexport function defaultComponentBuilder(args: TBuilderArgs) {\n\t// args are passed from the CLI and contain the necessary information for generating files\n\tconst { blueprint, fileOutputPath, outName, indexes } = args;\n\n\tconst replacedBlueprint = blueprint.content.replace(\n\t\t/__COMPONENT_NAME__/g,\n\t\toutName\n\t);\n\n\tfs.writeFileSync(fileOutputPath, replacedBlueprint);\n\n\t// Return paths of generated/modified files so it can be displayed at the end\n\treturn [fileOutputPath, ...indexes].filter((b) => b);\n}\n```\n\n## Plugins\n\nThe plugins key specifies additional plugins for the CLI. Plugins can be used to extend the functionality of the CLI. For now, plugin can be used to provide support for different languages and frameworks by adding blueprints and builders.\n\n### Currently Available Plugins\n\n-   [@amphore-dev/architect-plugin-react](https://www.npmjs.com/package/@amphore-dev/architect-plugin-react)\n\n    | Suppprted Language        | Extensions (index / default) | Description                              |\n    | ------------------------- | ---------------------------- | ---------------------------------------- |\n    | `react`                   | `.js`/ `.jsx`                | React components.                        |\n    | `react-typescript`        | `.ts`/ `.tsx`                | React components with TypeScript.        |\n    | `react-native`            | `.js`/ `.jsx`                | React Native components.                 |\n    | `react-native-typescript` | `.ts`/ `.tsx`                | React Native components with TypeScript. |\n\n### Creating a Plugin\n\nTo create a plugin, you can use the following [template on github](https://github.com/Amphore-Dev/Architect-plugin)\n\nThe plugin should have the following structure:\n\n```bash\n├── src/\n│   ├── blueprints/\n│   │   ├── default.bp.<extension>\n│   │   ├── myCustomBlueprint.bp.<extension>\n│   │   └── ...\n│   │\n│   └── builders/\n│       ├── default.builder.<extension>\n│       ├── myCustombuilder.builder.<extension>\n│       └── ...\n│\n├── package.json\n└── README.md\n```\n\n`<extension>` is the file extension for the output generated files (e.g., `js`, `ts`, `php`, etc.).\n\n## Contributing\n\nContributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.\n\n1. Fork the Project from the [GitHub repo](https://github.com/Amphore-Dev/Architect)\n\n2. Create an Issue to discuss the changes you would like to make\n\n3. Create your Feature Branch\n    - branch name should be in the format<br>\n      `<feat | fix | test | docs>/ARC-<issue-number>/<feature-name>`\n      <br><br>\n      ex: `feat/ARC-123/AmazingFeature`\n4. Link your branch to the issue on GitHub\n\n5. Commit your Changes (`git commit -m 'feat(ARC-123): Add some AmazingFeature'`)\n\n    - commit name should be in the format<br>\n      `<type>(<issue-key>): <commit-message>`\n      <br><br>\n      ex: `feat(ARC-123): Add some AmazingFeature`\n\n6. Push to the Branch (`git push origin feat/ARC-123/AmazingFeature`)\n\n7. Open a Pull Request\n\n    - PR name should be in the format<br>\n      `<type>(<issue-key>): <PR-title>`\n      <br><br>\n      ex: `feat(ARC-123): Add some AmazingFeature`\n\n8. Link the PR to the issue on GitHub\n\n9. Review the changes\n\n10. Merge the Pull Request\n\n## Contact\n\nSiméon F. - [@shimon42](https://github.com/Shimon42) - [contact@amphore.dev](mailto:contact@amphore.dev)\n","readmeFilename":"README.md"}