
Security News
/Research
Wallet-Draining npm Package Impersonates Nodemailer to Hijack Crypto Transactions
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
@picovoice/cheetah-react-native
Advanced tools
Made in Vancouver, Canada by Picovoice
Cheetah is an on-device speech-to-text engine. Cheetah is:
This binding is for running Cheetah on React Native 0.62.2+ on the following platforms:
To start install, ensure you have installed yarn and CocoaPods. Then, add the following native modules to your react-native project:
yarn add @picovoice/cheetah-react-native
or
npm i @picovoice/cheetah-react-native --save
Link the iOS package:
cd ios && pod install && cd ..
NOTE: Due to a limitation in React Native CLI auto-linking, the native module cannot be included as a transitive dependency. If you are creating a module that depends on cheetah-react-native, you will have to list these as peer dependencies and require developers to install it alongside.
Cheetah requires a valid Picovoice AccessKey
at initialization. AccessKey
acts as your credentials when using Cheetah SDKs.
You can get your AccessKey
for free. Make sure to keep your AccessKey
secret.
Signup or Login to Picovoice Console to get your AccessKey
.
Create a custom model using the Picovoice Console or use the default model.
To add a Leopard model file to your Android application, add the file as a bundled resource by placing it under the assets
directory of your Android application.
To add a Leopard model file to your iOS application, add the file as a bundled resource by selecting Build Phases in Xcode
and adding it to the Copy Bundle Resources
step.
Create an instance of Cheetah
:
import {Cheetah, CheetahErrors} from '@picovoice/cheetah-react-native';
const accessKey = "${ACCESS_KEY}" // AccessKey obtained from Picovoice Console (https://console.picovoice.ai/)
const modelPath = "${CHEETAH_MODEL_PATH}" // path relative to the assets folder or absolute path to file on device
try {
const cheetah = await Cheetah.create(accessKey, modelPath)
} catch (err: any) {
if (err instanceof CheetahErrors) {
// handle error
}
}
Transcribe real-time audio:
const getAudioFrame = () => {
// get audio frames
}
let transcript = ""
try {
while (1) {
const partialResult = await cheetah.process(getAudioFrame())
transcript += partialResult.transcript
if (partialResult.isEndpoint) {
const finalResult = await cheetah.flush()
transcript += finalTranscript.transcript
}
}
} catch (err: any) {
if (err instanceof CheetahErrors) {
// handle error
}
}
Finally, when done be sure to explicitly release the resources using cheetah.delete()
.
For example usage refer to our React Native demo application.
FAQs
Picovoice Cheetah React Native binding
The npm package @picovoice/cheetah-react-native receives a total of 137 weekly downloads. As such, @picovoice/cheetah-react-native popularity was classified as not popular.
We found that @picovoice/cheetah-react-native demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.