{"_id":"@bagustri3/aire","_rev":"9-1e54b2f47ef965effd4c5ce38d6afed7","name":"@bagustri3/aire","dist-tags":{"latest":"1.0.9"},"versions":{"1.0.1":{"name":"@bagustri3/aire","version":"1.0.1","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.1","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"9d07f200006377913f7fffa8aa93ef89a298e68f","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.1.tgz","fileCount":6,"integrity":"sha512-9+B1PSkZBQGmK1NwqAByFpk3Pw4EImckCOddPtjmBFh0obhH5A1YhApdJiB6V3RhhxZN+c0axLcmC1l20gwnCQ==","signatures":[{"sig":"MEYCIQDQmK8UD19y1SnOXEjdH6XpEc7HF+NU/0S2HRp5mdcxmQIhAKUnlGjl06qfoBAKvy9X+xcFt1LaPdhceBzMkRaQb9lF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25431},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.1_1762904827856_0.4839086294106296","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bagustri3/aire","version":"1.0.2","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.2","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"98dbee3323943266f126dadb5ef75202a6ed5e10","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.2.tgz","fileCount":7,"integrity":"sha512-WX3Jd+qD/22Ff+H8dTT13QY4LTMs9zvZG58tfMhC5qXUmOkRxSyHD8oSXXs47UIeKFtNoRd4CVfpvMp8cbQddQ==","signatures":[{"sig":"MEUCIQDSAUK3rrZ0IF79H+tPrakaax41YlvYK2Nz+3ZOBgHaKwIgCsN9A0KAmEhut3GtVElFeUhUzte27d9Hs478qvYFCzU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28178},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.2_1762905088076_0.9715081106661387","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bagustri3/aire","version":"1.0.3","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.3","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"92121647720bd3a3bf014da1860908ad5e7f73b7","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.3.tgz","fileCount":7,"integrity":"sha512-rYbWyoaBq7nE97k/y/V5tqEreGxI2n7w2MFByZofrjENiFHQVEWPT9qZltsvAn7JUEPdoyzCmJeENxT6EsQi6w==","signatures":[{"sig":"MEUCIG6nzgoxlz6znpMVd5oAbmSalsg+pZSZ7CudEuEL0b6zAiEA7ReGw8o2pAroZ6P1CGmw3Kf3qdPCRF/xN6StasCauWY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15832},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.3_1762905956960_0.9400186104551795","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bagustri3/aire","version":"1.0.4","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.4","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"93d7c1bf27a9554d9dc3b4c985e443bdbce75a78","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.4.tgz","fileCount":7,"integrity":"sha512-IxOksmdKrT9xM0rS/IDdVhu0kiyjJkMZoiCuO5hn2x0+Rv7DbAPnC45uyIoa45THM887v4xPahunSzMBWU+uNQ==","signatures":[{"sig":"MEQCIG1qN4jr+qyPZnbX3yqhcARbmxW8SBjGldxZ/WwiJHlqAiAnSNaOKsPD991lNTYnUKfkf93uz6QNB/lsO5WANkSFUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15877},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.4_1762906336587_0.5266348374561478","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@bagustri3/aire","version":"1.0.5","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.5","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"279c7c9ce4333750b7eb7bf094290d751c8b030a","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.5.tgz","fileCount":7,"integrity":"sha512-q44gL7bmw9UrJOu1Clk0txCNbL+SM7mO+ZvHlR5D6frBjjQk0jk0beC/A/cYhu2rtQGw5r8IiBaGJfSrXnJH+Q==","signatures":[{"sig":"MEYCIQCUUnKkuFLWhEqKmvReqUPoTQosHTpbtD609S4V/bA0MgIhAJ1bOSl9edAWY6iPSSkxY1DjZbVRWpOd24mYy+GiYqZR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9371},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.5_1763706448634_0.9221376398719456","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@bagustri3/aire","version":"1.0.6","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.6","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"35a9927f3e49309f21a060131470251a2c39cc66","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.6.tgz","fileCount":6,"integrity":"sha512-C/TwBRZnX7qkU+vBOSeDuBOPplV8PLZwW0Nvnmtl02wX25s3p9/u4JtRQPyJSxDsRb0p1SqY9RGZUv0MJrByyA==","signatures":[{"sig":"MEUCIARIn2ekhYBMWzFq8qkZ/CbW6yaxpkA8CNxkQ4eUL8AyAiEAgcQLGwYGiFD2YhTBG36m1Dul6S4+x5Ec5ObSB65nk8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9664},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0","javascript-obfuscator":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.6_1763792901781_0.47593449462280923","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@bagustri3/aire","version":"1.0.7","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.7","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"3092635a0184748e3f4e221316ddaf809a518e8a","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.7.tgz","fileCount":6,"integrity":"sha512-1AvEB7HSvZfCG8X2ja31p5rPhuoPhO56zKQVZSno4gcbW/wcQh6g0LzYaf8KZzsrm2ijzTDzajSvwCP5U6MHOg==","signatures":[{"sig":"MEQCIC8VYYfl1yCOdd3jR7wwSyaoYx7sacer51YxvvITUxYkAiAWMxIYf115keHgHwGq/mnH7Hl8QeKnD+gwr0F5aXC0Dw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23111},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0","javascript-obfuscator":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.7_1763793319506_0.15534996541770485","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@bagustri3/aire","version":"1.0.8","keywords":[],"author":"","license":"ISC","_id":"@bagustri3/aire@1.0.8","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"bin":{"aire":"index.js"},"dist":{"shasum":"049d8009be3241becbb917022b9303b602fcc126","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.8.tgz","fileCount":6,"integrity":"sha512-FxR2y4SMYknGDHVjf916+EqwqIrfeFMV3ebKHt1erjbYFU7V+UFoQTy4De0ghccRRrkqcaPJwYKl7jxy7mw7rg==","signatures":[{"sig":"MEQCIGjhg7l+baTLj2oUlPxkz85GwarC0dShri6zy5DBSFJ3AiAl4ofwwPPnBMZC+Yv41ut/vkO5Fzs8RfHI+5jOnJa4/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23111},"type":"module","scripts":{"start":"node index.js"},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"_npmVersion":"11.6.1","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ora":"^9.0.0","chalk":"^5.6.2","commander":"^14.0.2","@google/genai":"^1.29.0","javascript-obfuscator":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.0"},"_npmOperationalInternal":{"tmp":"tmp/aire_1.0.8_1763793435318_0.2610213545417872","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@bagustri3/aire","version":"1.0.9","description":"CLI tool for reviewing code and generating docs using Gemini 2.5","type":"module","bin":{"aire":"index.js"},"scripts":{"start":"node index.js"},"keywords":[],"author":"","license":"ISC","dependencies":{"@google/genai":"^1.29.0","chalk":"^5.6.2","commander":"^14.0.2","javascript-obfuscator":"^4.1.1","ora":"^9.0.0"},"devDependencies":{"@types/node":"^24.10.0"},"_id":"@bagustri3/aire@1.0.9","_nodeVersion":"24.11.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-81qRUuESWNgE1kDfLSsH3U0rO89aZvShlBfhlpcwYzPe55bKqsynKcgTDgVUb06az+BqGpYrkGb9zg07wrkSMA==","shasum":"400abdc72610ba9724d6e03a59a99bc7a9df7d08","tarball":"https://registry.npmjs.org/@bagustri3/aire/-/aire-1.0.9.tgz","fileCount":6,"unpackedSize":23151,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIE17+yhDphPjfPq/ihksi0R6FW1HRXDHbQSmh3yWKMUsAiBN5P+Y6jrTQpqy+VtVURBt5Gr7Se4UGc8Ou8fUS9WRCg=="}]},"_npmUser":{"name":"bagustri3","email":"tribagus0510@gmail.com"},"directories":{},"maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aire_1.0.9_1763793528181_0.559726471511605"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-11T23:47:07.759Z","modified":"2025-11-22T06:38:48.554Z","1.0.1":"2025-11-11T23:47:08.040Z","1.0.2":"2025-11-11T23:51:28.268Z","1.0.3":"2025-11-12T00:05:57.142Z","1.0.4":"2025-11-12T00:12:16.796Z","1.0.5":"2025-11-21T06:27:28.834Z","1.0.6":"2025-11-22T06:28:21.969Z","1.0.7":"2025-11-22T06:35:19.700Z","1.0.8":"2025-11-22T06:37:15.505Z","1.0.9":"2025-11-22T06:38:48.378Z"},"license":"ISC","keywords":[],"description":"CLI tool for reviewing code and generating docs using Gemini 2.5","maintainers":[{"name":"bagustri3","email":"tribagus0510@gmail.com"}],"readme":"# 🧠 @bagustri3/aire\n\n**AI-powered CLI for reviewing source code and generating documentation using Gemini 2.5**\n\n`aire` helps developers instantly **review code** and **generate technical documentation** through a simple command-line interface.  \nIt integrates with **Gemini 2.5**, providing smart code insights and clean, structured documentation output.\n\n---\n\n## 📦 Installation\n\n```bash\nnpm install -g @bagustri3/aire\n```\n\n---\n\n## ⚙️ Usage\n\n### 1. Review Code\n\nReview one or more source files using a glob-like pattern.\n\n```bash\naire --review \"src/*.js\"\n```\n\n**What it does:**\n- Reads each matching file in the folder.\n- Sends it to Gemini 2.5 for detailed review.\n- Saves the output as `aire-<filename>-review.md` beside each file.\n\n**Example output:**\n```\n📄 Review saved to src/aire-app.js-review.md\n```\n\n---\n\n### 2. Generate Documentation\n\nGenerate structured documentation for all supported files in a folder.\n\n```bash\naire --doc ./src\n```\n\n**What it does:**\n- Scans the folder for `.js`, `.ts`, `.tsx`, `.html`, `.java`, `.prisma`, `.py`, `.php` files.\n- Sends each to Gemini 2.5 for documentation generation.\n- Saves the output as `aire-<filename>-docs.md`.\n\n**Example output:**\n```\n📄 Documentation saved to src/aire-userService.ts-docs.md\n```\n\n---\n\n## 🧩 Supported File Types\n\n| Language | Extensions |\n|-----------|-------------|\n| JavaScript | `.js`, `.jsx` |\n| TypeScript | `.ts`, `.tsx` |\n| Python | `.py` |\n| PHP | `.php` |\n| HTML | `.html` |\n| Java | `.java` |\n| Prisma | `.prisma` |\n\n---\n\n## 🪄 Example Scenarios\n\n### Code Review\n```bash\naire --review \"backend/*.ts\"\n```\n\n→ Creates detailed feedback on logic, style, and maintainability.\n\n### Documentation\n```bash\naire --doc ./components\n```\n\n→ Generates readable markdown docs for each component.\n\n---\n\n## ⚡ Dependencies\n\n- [commander](https://www.npmjs.com/package/commander) — CLI framework  \n- [chalk](https://www.npmjs.com/package/chalk) — Colored console output  \n- [ora](https://www.npmjs.com/package/ora) — Loading spinners  \n- [fs](https://nodejs.org/api/fs.html) — File handling  \n- [path](https://nodejs.org/api/path.html) — File path utilities  \n- [askGemini](./gemini.js) — Custom Gemini 2.5 API integration\n\n---\n\n## 🧠 Example Output Files\n\n```\nsrc/\n├── app.js\n├── aire-app.js-review.md\n├── aire-app.js-docs.md\n```\n\n---\n\n## 🚀 Development\n\nClone the repository and run locally:\n\n```bash\ngit clone https://github.com/bagustri3/aire.git\ncd aire\nnpm install\nnpm link\n```\n\nNow you can use `aire` globally on your system for testing.\n\n---\n\n## 📜 License\n\nMIT © 2025 [Bagus Tri](https://www.npmjs.com/~bagustri3)\n\n---\n\n> “Code tells you how. Comments tell you why. Documentation tells others everything.”\n","readmeFilename":"README.md"}