{"_id":"@cappasoft/openrouter-models","_rev":"4-b39a16885d0522a05ef3ed4cd906040a","name":"@cappasoft/openrouter-models","dist-tags":{"latest":"1.3.0"},"versions":{"1.0.0":{"name":"@cappasoft/openrouter-models","version":"1.0.0","keywords":["openrouter","llm","models","api"],"license":"MIT","_id":"@cappasoft/openrouter-models@1.0.0","maintainers":[{"name":"ecappa","email":"ecappannelli@gmail.com"}],"homepage":"https://github.com/ecappa/openrouter-model-selector#readme","bugs":{"url":"https://github.com/ecappa/openrouter-model-selector/issues"},"dist":{"shasum":"7fbd3676acd27f00d12bffb2f21ea3e753de3c5c","tarball":"https://registry.npmjs.org/@cappasoft/openrouter-models/-/openrouter-models-1.0.0.tgz","fileCount":5,"integrity":"sha512-QG2UH8WUVf+knKLB8IxvFm3eDllUYqIho2UEIMfBQEqeOmS3MjWyb3O6py/+bMEbSXa55V6EqH+MxGtQpr8sFw==","signatures":[{"sig":"MEYCIQDsTfGVgqH5V5xmcGgZ0UV1IlsGfiyukPvC0pF9DbhI9QIhAPku3aQ7gLYmqLREZRovWg7ZTNhcxHG0iX28HVIah4t2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25295},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a9340c5407b5e7cb4a9f0633fb9410366f90641f","scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"ecappa","email":"ecappannelli@gmail.com"},"repository":{"url":"git+https://github.com/ecappa/openrouter-model-selector.git","type":"git","directory":"packages/openrouter-models"},"_npmVersion":"11.7.0","description":"Headless client for fetching and managing OpenRouter models","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/openrouter-models_1.0.0_1767668316501_0.267573449648838","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@cappasoft/openrouter-models","version":"1.1.0","keywords":["openrouter","llm","models","api"],"license":"MIT","_id":"@cappasoft/openrouter-models@1.1.0","maintainers":[{"name":"ecappa","email":"ecappannelli@gmail.com"}],"homepage":"https://github.com/ecappa/openrouter-model-selector#readme","bugs":{"url":"https://github.com/ecappa/openrouter-model-selector/issues"},"dist":{"shasum":"6138d5d215f4aa835fb63bc26169d43b21fdf991","tarball":"https://registry.npmjs.org/@cappasoft/openrouter-models/-/openrouter-models-1.1.0.tgz","fileCount":5,"integrity":"sha512-xZja7oHKab2xFAU7j4ZqOFQtyHIolIwgb8I8meBAbA32MVDSNO/WL9+AtA1gLYfYPxJszPVqbImtobxcZssiMA==","signatures":[{"sig":"MEUCIQDgw7osasFnC+sAXwLm/P/jHOKETBCFITlCwNPwY3G8/AIgbu8gTXyLdSoLghZRZSHav1+JKRWkwL4IEJSUqgR8t+o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26264},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"fa896d52f6ee5aeb82934871f5ff8088697776bc","scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"ecappa","email":"ecappannelli@gmail.com"},"repository":{"url":"git+https://github.com/ecappa/openrouter-model-selector.git","type":"git","directory":"packages/openrouter-models"},"_npmVersion":"10.8.2","description":"Headless client for fetching and managing OpenRouter models","directories":{},"_nodeVersion":"20.19.6","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/openrouter-models_1.1.0_1767672763639_0.025085061884143833","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@cappasoft/openrouter-models","version":"1.2.0","keywords":["openrouter","llm","models","api"],"license":"MIT","_id":"@cappasoft/openrouter-models@1.2.0","maintainers":[{"name":"ecappa","email":"ecappannelli@gmail.com"}],"homepage":"https://github.com/ecappa/openrouter-model-selector#readme","bugs":{"url":"https://github.com/ecappa/openrouter-model-selector/issues"},"dist":{"shasum":"2f1178de237f286db60c07d50d73b0e3388be6b0","tarball":"https://registry.npmjs.org/@cappasoft/openrouter-models/-/openrouter-models-1.2.0.tgz","fileCount":5,"integrity":"sha512-Syybk9fhO58NPTzbv+4HYp9lOGuVZ8UFqEf32EuGNZEadMYRdj0zqjJZCIaIXdFCMqkoeLEtTCQWzg1bXUjWyg==","signatures":[{"sig":"MEYCIQCA1yP4FxgKzKVlsqNpFv33eWYsdbSk6pDvv91KhDlLsAIhAPNR2YQ/pWplg7uUeNmW0N8fP8Kb3rcnsizdTFpPjS9q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26264},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d71d3d23e21e0191a1073f14ff0bf8b73ff341d9","scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"ecappa","email":"ecappannelli@gmail.com"},"repository":{"url":"git+https://github.com/ecappa/openrouter-model-selector.git","type":"git","directory":"packages/openrouter-models"},"_npmVersion":"11.7.0","description":"Headless client for fetching and managing OpenRouter models","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/openrouter-models_1.2.0_1767816642296_0.30180325707785083","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@cappasoft/openrouter-models","version":"1.3.0","description":"Headless client for fetching and managing OpenRouter models","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsup","dev":"tsup --watch"},"keywords":["openrouter","llm","models","api"],"repository":{"type":"git","url":"git+https://github.com/ecappa/openrouter-model-selector.git","directory":"packages/openrouter-models"},"license":"MIT","devDependencies":{"tsup":"^8.3.5","typescript":"^5.8.3"},"gitHead":"4774d4cfb9c22edc0636a88458b643351279112d","_id":"@cappasoft/openrouter-models@1.3.0","bugs":{"url":"https://github.com/ecappa/openrouter-model-selector/issues"},"homepage":"https://github.com/ecappa/openrouter-model-selector#readme","_nodeVersion":"24.12.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-4YlvLTt8V4KB+UtQ2meYnZ1yaPYyOjWlmMkrZY00yL3gOGLNTEMLYdcRMFflNJ2HZ9YvpXy2rtd7pGpPiS5KXQ==","shasum":"3fd731a98e1326b9f4529375ce059864a0301c3c","tarball":"https://registry.npmjs.org/@cappasoft/openrouter-models/-/openrouter-models-1.3.0.tgz","fileCount":5,"unpackedSize":26263,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDWB1aIwNX2SrLw/LX9KVaveVAe3XFo92+8zDlFhBJJwwIhAJSle1gvorVlOJeWQ297Ftm12w5aCuiRZcAAWnT0Q9Ry"}]},"_npmUser":{"name":"ecappa","email":"ecappannelli@gmail.com"},"directories":{},"maintainers":[{"name":"ecappa","email":"ecappannelli@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/openrouter-models_1.3.0_1767840751156_0.9563556808752451"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-06T02:58:36.412Z","modified":"2026-01-08T02:52:31.532Z","1.0.0":"2026-01-06T02:58:36.634Z","1.1.0":"2026-01-06T04:12:43.817Z","1.2.0":"2026-01-07T20:10:42.445Z","1.3.0":"2026-01-08T02:52:31.323Z"},"bugs":{"url":"https://github.com/ecappa/openrouter-model-selector/issues"},"license":"MIT","homepage":"https://github.com/ecappa/openrouter-model-selector#readme","keywords":["openrouter","llm","models","api"],"repository":{"type":"git","url":"git+https://github.com/ecappa/openrouter-model-selector.git","directory":"packages/openrouter-models"},"description":"Headless client for fetching and managing OpenRouter models","maintainers":[{"name":"ecappa","email":"ecappannelli@gmail.com"}],"readme":"# 🔌 @cappasoft/openrouter-models\n\n[![npm version](https://img.shields.io/npm/v/@cappasoft/openrouter-models.svg?style=flat-square)](https://www.npmjs.com/package/@cappasoft/openrouter-models)\n\nHeadless TypeScript client for fetching and grouping [OpenRouter](https://openrouter.ai) models.\n\n## Installation\n\n```bash\nnpm install @cappasoft/openrouter-models\n```\n\n## Usage\n\n```ts\nimport { createOpenRouterModelsClient } from '@cappasoft/openrouter-models'\n\nconst client = createOpenRouterModelsClient({\n  apiKey: 'sk-or-v1-...',\n})\n\n// Fetch all models grouped by category\nconst { models, categories } = await client.listModels()\n\nconsole.log(`Found ${models.length} models`)\nconsole.log(`Categories: ${categories.map(c => c.name).join(', ')}`)\n```\n\n## API\n\n### `createOpenRouterModelsClient(options)`\n\nCreates a client instance.\n\n```ts\nconst client = createOpenRouterModelsClient({\n  apiKey: string,      // Your OpenRouter API key\n  baseUrl?: string,    // API base URL (optional)\n})\n```\n\n### `client.listModels()`\n\nFetches all models and groups them by provider.\n\n```ts\nconst { models, categories } = await client.listModels()\n```\n\n### Types\n\n```ts\ninterface OpenRouterModel {\n  id: string\n  name: string\n  description?: string\n  context_length: number\n  pricing: { prompt: string; completion: string }\n  // ... more fields\n}\n\ninterface ModelCategory {\n  name: string\n  models: OpenRouterModel[]\n}\n```\n\n## License\n\nMIT","readmeFilename":"README.md"}