{"_id":"@aireact/voice-actions","_rev":"4-7fa9b6b0e6d8a4bd5f395d73cc8f12bf","name":"@aireact/voice-actions","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@aireact/voice-actions","version":"1.0.0","keywords":["react","voice","speech","ai","commands"],"author":{"name":"reachbrt"},"license":"MIT","_id":"@aireact/voice-actions@1.0.0","maintainers":[{"name":"aivue","email":"reachbrt@gmail.com"}],"dist":{"shasum":"7d7dbbd1e97852b55a7ff47b9c3521eb96717176","tarball":"https://registry.npmjs.org/@aireact/voice-actions/-/voice-actions-1.0.0.tgz","fileCount":10,"integrity":"sha512-abzZI41xyJyfwydcSg/gOQUKtD2Gqw9wGWtYqyqaDB7qz15AI3nXjVVYdGN1eAq3e0AgZu7DJ3Sn2xIIo36+mA==","signatures":[{"sig":"MEUCIGpkc03mUDs5e5ElpyLxainB/sunYg5+vB0kDrkrWziNAiEA18RvHSBXpZqZWPNMUpflK1w/1wqTUvUZXGZbdPA3Djw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107918},"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"},"./dist/voice-actions.css":"./dist/voice-actions.css"},"gitHead":"3578555f09dd610edce51f84a4d6d27a6b2146bd","scripts":{"dev":"vite build --watch","build":"tsc && vite build"},"_npmUser":{"name":"aivue","email":"reachbrt@gmail.com"},"_npmVersion":"10.9.2","description":"Voice commands & speech recognition for React","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.14.0","dependencies":{"@aireact/core":"*"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.0.10","typescript":"^5.3.3","@types/react":"^18.2.45","vite-plugin-dts":"^3.7.0","@types/react-dom":"^18.2.18","@vitejs/plugin-react":"^4.2.1"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/voice-actions_1.0.0_1765693721840_0.09768221593743864","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@aireact/voice-actions","version":"1.0.1","keywords":["react","voice","speech","ai","commands"],"author":{"name":"reachbrt"},"license":"MIT","_id":"@aireact/voice-actions@1.0.1","maintainers":[{"name":"aivue","email":"reachbrt@gmail.com"}],"dist":{"shasum":"acb67a1ec68bd97d17795d3ae13bb6cd35ee86c8","tarball":"https://registry.npmjs.org/@aireact/voice-actions/-/voice-actions-1.0.1.tgz","fileCount":11,"integrity":"sha512-F3iVn8csB7bRJ6hZh+KooHme0DpyVtkk8FsYyBSIu5hJRQH0dUAcfZE6ElCrU1GiGHxGXpK+FEyPQTZ/kkZjYA==","signatures":[{"sig":"MEQCIC6qnoFXoYdmFTrWSBSfrP5xNeNThVU0LlZYknw37t5WAiBwdqLm+xcCHnKtmFBQsHC28UA4e+q6y8olh4F+Q0EO8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111477},"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"},"./dist/voice-actions.css":"./dist/voice-actions.css"},"gitHead":"6857364eda430b8e9222514d3a5eeb6a5175c5b7","scripts":{"dev":"vite build --watch","build":"tsc && vite build"},"_npmUser":{"name":"aivue","email":"reachbrt@gmail.com"},"_npmVersion":"10.9.2","description":"Voice commands & speech recognition for React","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.14.0","dependencies":{"@aireact/core":"*"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.0.10","typescript":"^5.3.3","@types/react":"^18.2.45","vite-plugin-dts":"^3.7.0","@types/react-dom":"^18.2.18","@vitejs/plugin-react":"^4.2.1"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/voice-actions_1.0.1_1765694999408_0.6575738251186831","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@aireact/voice-actions","version":"1.0.2","keywords":["react","voice","speech","ai","commands"],"author":{"name":"reachbrt"},"license":"MIT","_id":"@aireact/voice-actions@1.0.2","maintainers":[{"name":"aivue","email":"reachbrt@gmail.com"}],"dist":{"shasum":"7834a708de9e64f1cd8d2e511b7ba59ca2748a65","tarball":"https://registry.npmjs.org/@aireact/voice-actions/-/voice-actions-1.0.2.tgz","fileCount":11,"integrity":"sha512-G8X3QnBQBrnosEZcBt9YpmjPwhc0tEq6Mg2DuoPI0Mvun69IVEfi3o31mT77edNKFvNeOUNQPY/ftB7P/yQF0Q==","signatures":[{"sig":"MEQCIFXy3e2dmYtRe04FAjJ+/zFu1VPYIZs/U3+eFSQLJUTtAiAVYiowvLODdJR6hcRnDaA1X+Cy3ox+n4v5kMxRZ9a62A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111477},"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"},"./dist/voice-actions.css":"./dist/voice-actions.css"},"gitHead":"6857364eda430b8e9222514d3a5eeb6a5175c5b7","scripts":{"dev":"vite build --watch","build":"tsc && vite build"},"_npmUser":{"name":"aivue","email":"reachbrt@gmail.com"},"_npmVersion":"10.9.2","description":"Voice commands & speech recognition for React","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.14.0","dependencies":{"@aireact/core":"*"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.0.10","typescript":"^5.3.3","@types/react":"^18.2.45","vite-plugin-dts":"^3.7.0","@types/react-dom":"^18.2.18","@vitejs/plugin-react":"^4.2.1"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/voice-actions_1.0.2_1765696324411_0.5977660619026086","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@aireact/voice-actions","version":"1.0.3","description":"Voice commands & speech recognition for React","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"},"./dist/voice-actions.css":"./dist/voice-actions.css"},"scripts":{"build":"tsc && vite build","dev":"vite build --watch"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"dependencies":{"@aireact/core":"*"},"devDependencies":{"@types/react":"^18.2.45","@types/react-dom":"^18.2.18","@vitejs/plugin-react":"^4.2.1","typescript":"^5.3.3","vite":"^5.0.10","vite-plugin-dts":"^3.7.0"},"keywords":["react","voice","speech","ai","commands"],"author":{"name":"reachbrt"},"license":"MIT","sideEffects":["*.css"],"_id":"@aireact/voice-actions@1.0.3","gitHead":"eb0d57118209adc317afca9ec14db9074a14377b","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-O+mBjrLnYUN2JWB7S/x4WywgxM6mNwSxE4HPvwtcA7fzWzxv9NiGvPtOc6U8MyXWO+c0sQHOSXkJ9A1bXRBifA==","shasum":"40277774d6d05c4472be0f2a2cf7fa5be82c14bd","tarball":"https://registry.npmjs.org/@aireact/voice-actions/-/voice-actions-1.0.3.tgz","fileCount":11,"unpackedSize":112366,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIF6/K5wn7dMWFept9uAixS81dObXS9QW9y3th0tLHMq+AiBFDlihCPqjBfl5IgbTFwEcYyMH6xeequFINTRhWB4Pug=="}]},"_npmUser":{"name":"aivue","email":"reachbrt@gmail.com"},"directories":{},"maintainers":[{"name":"aivue","email":"reachbrt@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/voice-actions_1.0.3_1766466265370_0.7538458089297619"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-14T06:28:41.781Z","modified":"2025-12-23T05:04:25.737Z","1.0.0":"2025-12-14T06:28:41.985Z","1.0.1":"2025-12-14T06:49:59.528Z","1.0.2":"2025-12-14T07:12:04.562Z","1.0.3":"2025-12-23T05:04:25.548Z"},"author":{"name":"reachbrt"},"license":"MIT","keywords":["react","voice","speech","ai","commands"],"description":"Voice commands & speech recognition for React","maintainers":[{"name":"aivue","email":"reachbrt@gmail.com"}],"readme":"# @aireact/voice-actions\n\n🚀 **AI-Powered Voice Commands for React**\n\nVoice recognition and command processing with AI for hands-free application control.\n\n<p>\n  <a href=\"https://www.npmjs.com/package/@aireact/voice-actions\"><img src=\"https://img.shields.io/npm/v/@aireact/voice-actions.svg?style=flat-square\" alt=\"npm version\"></a>\n  <a href=\"https://www.npmjs.com/package/@aireact/voice-actions\"><img src=\"https://img.shields.io/npm/dm/@aireact/voice-actions\" alt=\"npm downloads\"></a>\n  <a href=\"https://github.com/reachbrt/AIReact/blob/main/LICENSE\"><img src=\"https://img.shields.io/npm/l/@aireact/voice-actions.svg?style=flat-square\" alt=\"MIT License\"></a>\n  <a href=\"https://github.com/reachbrt/AIReact\"><img src=\"https://img.shields.io/github/stars/reachbrt/AIReact?style=social\" alt=\"GitHub Stars\"></a>\n</p>\n\n## ✨ Features\n\n- **🎤 Voice Recognition**: Speech-to-text with AI enhancement\n- **🗣️ Text-to-Speech**: Natural voice responses\n- **🎯 Command Processing**: AI understands intent\n- **🌍 Multi-Language**: Support for 50+ languages\n- **⚡ Real-time**: Instant voice processing\n- **🔧 TypeScript**: Full TypeScript support\n\n## 📦 Installation\n\n```bash\nnpm install @aireact/voice-actions @aireact/core\n```\n\n## 🚀 Quick Start\n\n```tsx\nimport { VoiceButton, useVoiceRecognition } from '@aireact/voice-actions';\nimport '@aireact/voice-actions/style.css';\n\nfunction App() {\n  return (\n    <VoiceButton\n      provider=\"openai\"\n      apiKey={process.env.REACT_APP_OPENAI_API_KEY}\n      onCommand={(command) => console.log('Command:', command)}\n      onTranscript={(text) => console.log('Heard:', text)}\n      language=\"en-US\"\n    />\n  );\n}\n```\n\n### Using the Hook\n\n```tsx\nimport { useVoiceRecognition } from '@aireact/voice-actions';\n\nfunction VoiceControlled() {\n  const {\n    isListening,\n    transcript,\n    command,\n    startListening,\n    stopListening,\n    speak\n  } = useVoiceRecognition({\n    provider: 'openai',\n    apiKey: process.env.REACT_APP_OPENAI_API_KEY,\n    language: 'en-US',\n    commands: {\n      'open settings': () => openSettings(),\n      'search for *': (query) => search(query),\n      'go to *': (page) => navigate(page)\n    }\n  });\n\n  return (\n    <div>\n      <button onClick={isListening ? stopListening : startListening}>\n        {isListening ? '🔴 Listening...' : '🎤 Start'}\n      </button>\n      {transcript && <p>You said: {transcript}</p>}\n      {command && <p>Command: {command}</p>}\n      <button onClick={() => speak('Hello! How can I help?')}>\n        Speak\n      </button>\n    </div>\n  );\n}\n```\n\n## 🌍 Supported Languages\n\n| Language | Code | Speech-to-Text | Text-to-Speech |\n|----------|------|----------------|----------------|\n| English (US) | en-US | ✅ | ✅ |\n| English (UK) | en-GB | ✅ | ✅ |\n| Spanish | es-ES | ✅ | ✅ |\n| French | fr-FR | ✅ | ✅ |\n| German | de-DE | ✅ | ✅ |\n| Japanese | ja-JP | ✅ | ✅ |\n| Chinese | zh-CN | ✅ | ✅ |\n\n## 📖 Props\n\n| Prop | Type | Default | Description |\n|------|------|---------|-------------|\n| `provider` | string | - | AI provider |\n| `apiKey` | string | - | API key |\n| `language` | string | 'en-US' | Voice language |\n| `onCommand` | function | - | Command callback |\n| `onTranscript` | function | - | Transcript callback |\n| `continuous` | boolean | false | Continuous listening |\n\n## 🎨 Customization\n\n```css\n:root {\n  --aireact-voice-active: #f44336;\n  --aireact-voice-idle: #9e9e9e;\n  --aireact-voice-bg: #ffffff;\n}\n```\n\n## 📦 Related Packages\n\n### React (@aireact)\n- [@aireact/core](https://www.npmjs.com/package/@aireact/core) - Core AI Client\n- [@aireact/chatbot](https://www.npmjs.com/package/@aireact/chatbot) - AI Chat\n- [@aireact/smart-notify](https://www.npmjs.com/package/@aireact/smart-notify) - Notifications\n\n### Vue.js (@aivue)\n- [@aivue/voice-actions](https://www.npmjs.com/package/@aivue/voice-actions) - Vue Voice Actions\n- [@aivue/core](https://www.npmjs.com/package/@aivue/core) - Vue Core AI Client\n\n### Angular (@aiangular) - Coming Soon\n- @aiangular/voice-actions - Angular Voice Actions\n\n## 🔗 More Information\n\n- [GitHub Repository](https://github.com/reachbrt/AIReact)\n- [Full Documentation](https://github.com/reachbrt/AIReact/wiki)\n- [Report Issues](https://github.com/reachbrt/AIReact/issues)\n\n## 📄 License\n\nMIT © [Bharatkumar Subramanian](https://github.com/reachbrt)\n\n","readmeFilename":"README.md"}