{"_id":"@api-weaver/core","_rev":"6-81414cdd1a7395578f3d550f854d0b3a","name":"@api-weaver/core","dist-tags":{"latest":"0.0.20"},"versions":{"0.0.1":{"name":"@api-weaver/core","version":"0.0.1","author":{"name":"Aka-Amir"},"license":"MIT","_id":"@api-weaver/core@0.0.1","maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"homepage":"https://github.com/Aka-Amir/api-weaver","dist":{"shasum":"103ca4e41e9a1e26cca65340c9d129f41039a200","tarball":"https://registry.npmjs.org/@api-weaver/core/-/core-0.0.1.tgz","fileCount":89,"integrity":"sha512-IpuQVmGvZdiGD+xTH8ZgIu8+6lVFxDRDeyjjU4dekeh4kGbvGqvllVlLMzsZ5EdC9fsfQW9g7aD8v70VbQakTw==","signatures":[{"sig":"MEYCIQCxf2KDRwrnzhWli1z8W6yvib8w7BQRW/VglfJGG+9jDwIhAIgT67HDlEulXxea3h0PmPHLQLXIxNkksL1U0J6c5qUZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82812},"main":"./dist/index.js","types":"./dist/index.d.ts","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf dist && mkdir dist && tsc"},"_npmUser":{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"},"publisher":"Aka-Amir","_npmVersion":"10.9.2","description":"Weaving your APIs into TypeScript !","directories":{},"_nodeVersion":"22.14.0","dependencies":{"prettier":"^3.6.2","@types/node":"^24.3.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/core_0.0.1_1757741397923_0.9384955563759498","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"@api-weaver/core","version":"0.0.10","author":{"name":"Aka-Amir"},"license":"MIT","_id":"@api-weaver/core@0.0.10","maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"homepage":"https://github.com/Aka-Amir/api-weaver","dist":{"shasum":"2814a219e60da90510129f727cba04e3c647b650","tarball":"https://registry.npmjs.org/@api-weaver/core/-/core-0.0.10.tgz","fileCount":90,"integrity":"sha512-BgqPW/+TjZtrYV+l8oXw/4+RPnct6KxqM0ZX7CTdGlTLxmF0htgElYq+GlaBchGrHIsy5hzDfCzhHJizQBhDpg==","signatures":[{"sig":"MEQCID8FTYFtTQsDUSul/2n2h+zgiJQ3s93NsFMgIYhuQs1TAiB2rUr8NCVonoj8+9MrBvqY8EyMzw0ZsY5mZ40uZpY/Iw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85685},"main":"./dist/index.js","types":"./dist/index.d.ts","gitHead":"fae6f34e2df385752786f3c8e8dc2dcdd6f999f2","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf dist && mkdir dist && tsc"},"_npmUser":{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"},"publisher":"Aka-Amir","_npmVersion":"10.9.2","description":"Weaving your APIs into TypeScript !","directories":{},"_nodeVersion":"22.14.0","dependencies":{"prettier":"^3.6.2","@types/node":"^24.3.3"},"_hasShrinkwrap":false,"devDependencies":{"openapi-types":"^12.1.3"},"_npmOperationalInternal":{"tmp":"tmp/core_0.0.10_1757832103848_0.7047310380022329","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"@api-weaver/core","version":"0.0.11","author":{"name":"Aka-Amir"},"license":"MIT","_id":"@api-weaver/core@0.0.11","maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"homepage":"https://github.com/Aka-Amir/api-weaver","dist":{"shasum":"2d3747b56703d69dfa25aea285a573165768b4c8","tarball":"https://registry.npmjs.org/@api-weaver/core/-/core-0.0.11.tgz","fileCount":102,"integrity":"sha512-IR7vwnlsmhP/POQmw6fnZOThmwoCc1QCB7Z6q/h6YQsAC1EgGhwpeaALXDqHlmwQ1zKkIk0uqp5ceJ6g5fjaLQ==","signatures":[{"sig":"MEUCIHNaf2IdWeY0+MBTiopIXxVUq0U5gOkR/5+86H8TStq8AiEA9STY9JXFqm8snHVbMDXwJNfrSX2ui4N5mFol2FluKAQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96981},"main":"./dist/index.js","types":"./dist/index.d.ts","gitHead":"fae6f34e2df385752786f3c8e8dc2dcdd6f999f2","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf dist && mkdir dist && tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"},"publisher":"Aka-Amir","_npmVersion":"10.9.2","description":"Weaving your APIs into TypeScript !","directories":{},"_nodeVersion":"22.14.0","dependencies":{"prettier":"^3.6.2","@types/node":"^24.3.3"},"_hasShrinkwrap":false,"devDependencies":{"openapi-types":"^12.1.3"},"_npmOperationalInternal":{"tmp":"tmp/core_0.0.11_1757832324030_0.11894192494515377","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"@api-weaver/core","version":"0.0.12","author":{"name":"Aka-Amir"},"license":"MIT","_id":"@api-weaver/core@0.0.12","maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"homepage":"https://github.com/Aka-Amir/api-weaver","dist":{"shasum":"f8fbc52748bd8d2b017be7969b49408e35a2c40b","tarball":"https://registry.npmjs.org/@api-weaver/core/-/core-0.0.12.tgz","fileCount":102,"integrity":"sha512-wrcN3+irQLXb/qIMZ44gv/Dy1RlRPjX4rDR2dVlOvakhUZf2kgylFTj4L+ysL3ufsY0n5cd3DryPR0iLMNUdjg==","signatures":[{"sig":"MEUCIQCSouNtuID1BfUwIfgrvvKHqIvkDDDRIO0dvfZoV+LChgIgDAc9SkIunoq4k7anMgp9blMYMoZNvLc4yHv4DIj1yZE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97372},"main":"./dist/index.js","types":"./dist/index.d.ts","gitHead":"a4f4cef52d00bebb339f7b919616c7e65b319a58","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf dist && mkdir dist && tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"},"publisher":"Aka-Amir","_npmVersion":"10.9.2","description":"Weaving your APIs into TypeScript !","directories":{},"_nodeVersion":"22.14.0","dependencies":{"prettier":"^3.6.2","@types/node":"^24.3.3"},"_hasShrinkwrap":false,"devDependencies":{"openapi-types":"^12.1.3"},"_npmOperationalInternal":{"tmp":"tmp/core_0.0.12_1757832598611_0.6126652370201504","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"@api-weaver/core","version":"0.0.13","author":{"name":"Aka-Amir"},"license":"MIT","_id":"@api-weaver/core@0.0.13","maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"homepage":"https://github.com/Aka-Amir/api-weaver","dist":{"shasum":"1a6019352cccbd5f9e5324a370dafea201b94cba","tarball":"https://registry.npmjs.org/@api-weaver/core/-/core-0.0.13.tgz","fileCount":102,"integrity":"sha512-8nmGYcAlGNs1Nt0jUohP+c0OZobGGPDolhExZyQFCeMeAGqEI5QxSGr9li/30R9+BTmIAW+5jDhJ00eXEmV4KQ==","signatures":[{"sig":"MEYCIQDE9Tu958aIj8/QNkzcLki/YMVgE6GvYTsAA5be5Jg2UAIhAOjGFLSJcED/htRjOc685oej19zOWP4ncDaRC1Odd2Oy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97375},"main":"./dist/index.js","types":"./dist/index.d.ts","gitHead":"a4f4cef52d00bebb339f7b919616c7e65b319a58","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf dist && mkdir dist && tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"},"publisher":"Aka-Amir","_npmVersion":"10.9.2","description":"Weaving your APIs into TypeScript !","directories":{},"_nodeVersion":"22.14.0","dependencies":{"prettier":"^3.6.2","@types/node":"^24.3.3"},"_hasShrinkwrap":false,"devDependencies":{"openapi-types":"^12.1.3"},"_npmOperationalInternal":{"tmp":"tmp/core_0.0.13_1758347375872_0.10450426988352479","host":"s3://npm-registry-packages-npm-production"}},"0.0.20":{"name":"@api-weaver/core","description":"Weaving your APIs into TypeScript !","author":{"name":"Aka-Amir"},"private":false,"publisher":"Aka-Amir","homepage":"https://github.com/Aka-Amir/api-weaver","license":"MIT","main":"./dist/index.js","types":"./dist/index.d.ts","version":"0.0.20","scripts":{"test":"ts-node ./src/main.ts","build":"rm -rf dist && mkdir dist && tsc","prepublishOnly":"npm run build"},"dependencies":{"@types/node":"^24.3.3","prettier":"^3.6.2"},"devDependencies":{"openapi-types":"^12.1.3"},"_id":"@api-weaver/core@0.0.20","gitHead":"8324eee445664c0325a5cf05d71daa7935480688","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-x0YbudykA2Xz5Wbe1OjINfLWUQRqTjkKZ8xges/NfDuBYRMBC4dL1ijjvufnGkfw1Y2vvzaMeKBZdQpeaebIwQ==","shasum":"c28f66a9ba3858f6d2349c81eba15b5d40131100","tarball":"https://registry.npmjs.org/@api-weaver/core/-/core-0.0.20.tgz","fileCount":114,"unpackedSize":108199,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID8l9PeLktLv2h+ZmWnV71IjEMH9NHuT3xFWy6xSDBXUAiEAgzh3TVzZM77QR5jmYwpKmSWo1KM+10GGvi9w6KsY0v8="}]},"_npmUser":{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"},"directories":{},"maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core_0.0.20_1762260501809_0.8196380561337706"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-13T05:29:57.850Z","modified":"2025-11-04T12:48:22.204Z","0.0.1":"2025-09-13T05:29:58.123Z","0.0.10":"2025-09-14T06:41:44.041Z","0.0.11":"2025-09-14T06:45:24.230Z","0.0.12":"2025-09-14T06:49:58.791Z","0.0.13":"2025-09-20T05:49:36.060Z","0.0.20":"2025-11-04T12:48:21.995Z"},"author":{"name":"Aka-Amir"},"license":"MIT","homepage":"https://github.com/Aka-Amir/api-weaver","description":"Weaving your APIs into TypeScript !","maintainers":[{"name":"supo.amirkhalili","email":"supo.amirkhalili@gmail.com"}],"readme":"# Api Weaver\n\n> Weaving your APIs into TypeScript !\n\nA powerful CLI tool that generates TypeScript SDKs from OpenAPI specifications, making API integration seamless and type-safe.\n\n## 🚀 Installation\n\nInstall Api Weaver globally via npm:\n\n```bash\nnpm install -g api-weaver\n```\n\n## 📖 Usage\n\nApi Weaver provides a simple command-line interface to generate TypeScript SDKs from your OpenAPI specifications.\n\n### Basic Syntax\n\n```bash\napi-weaver <COMMANDS>\n```\n\n**or use the shorter alias:**\n\n```bash\napiva <COMMANDS>\n```\n\n### Generate Command\n\nGenerate a TypeScript SDK from an OpenAPI specification:\n\n```bash\napi-weaver generate -f <openapi-file> -o <output-directory> -n <sdk-name>\n```\n\n**Aliases:** `g`, `gen`\n\n#### Required Options\n\n| Option | Flag | Description |\n|--------|------|-------------|\n| `--file` | `-f` | Path to the OpenAPI specification file (JSON format) |\n| `--out` | `-o` | Output directory for the generated SDK files |\n| `--name` | `-n` | Name for the generated SDK |\n\n#### Examples\n\n```bash\n# Generate SDK from OpenAPI file\napi-weaver generate -f ./api-spec.json -o ./generated-sdk -n MyApiSdk\n\n# Using aliases\napiva g -f ./swagger.json -o ./sdk -n UserApi\n\n# Full command with long flags\napi-weaver generate --file ./openapi.json --out ./output --name PaymentAPI\n```\n\n## 📁 Output Structure\n\nThe generated SDK will include:\n\n- **Type definitions** - TypeScript interfaces and types based on your OpenAPI schemas\n- **API clients** - Ready-to-use client classes for each API endpoint\n- **Models** - Data models corresponding to your API schemas\n- **Enums** - Enumeration types from your OpenAPI specification\n\n## 🔧 Features\n\n- ✅ **OpenAPI 3.x Support** - Full compatibility with OpenAPI 3.x specifications\n- ✅ **Type Safety** - Generate fully typed TypeScript code\n- ✅ **Automatic Client Generation** - Create API clients for all endpoints\n- ✅ **Schema Validation** - Built-in validation for OpenAPI specifications\n- ✅ **Flexible Output** - Customizable output directory and SDK naming\n- ✅ **CLI Friendly** - Simple command-line interface with helpful aliases\n\n## 📋 Requirements\n\n- Node.js (version 14 or higher)\n- Valid OpenAPI 3.x specification file in JSON format\n\n## 🛠️ Development\n\nIf you want to contribute or run Api Weaver from source:\n\n```bash\n# Clone the repository\ngit clone <repository-url>\n\n# Install dependencies\nnpm install\n\n# Build the project\nnpm run build\n\n# Run in development mode\nnpm run start:dev\n\n# Run tests\nnpm test\n```\n\n## 📝 License\n\nThis project is licensed under the MIT License.\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## 📞 Support\n\nIf you encounter any issues or have questions, please file an issue on the project repository.\n\n---\n\n**Author:** Aka-Amir\n\n**Version:** 0.0.3","readmeFilename":"README.md"}