
Security News
Socket Releases Free Certified Patches for Critical vm2 Sandbox Escape
A critical vm2 sandbox escape can allow untrusted JavaScript to break isolation and execute commands on the host Node.js process.
Ultra-lightweight text-to-speech (1.6M params). Pure Node.js inference via ONNX Runtime — zero Python dependency.
Ultra-lightweight Text-to-Speech for Node.js — 1.6M params, 44.1kHz, ~53x real-time on CPU.
Pure Node.js offline TTS inference via ONNX Runtime. Zero Python dependency. The ONNX model (~6 MB) is auto-downloaded from HuggingFace on first use.
npm install tiny-tts
const TinyTTS = require('tiny-tts');
const tts = new TinyTTS();
// Synthesize and save to WAV
await tts.speak('Hello world!', { output: 'hello.wav' });
// With options
await tts.speak('This is a fast speech test.', {
output: 'fast.wav',
speaker: 'MALE',
speed: 1.5
});
// Clean up
await tts.dispose();
# Basic usage
npx tiny-tts "Hello world!" -o hello.wav
# With options
npx tiny-tts "The weather is nice today." -o output.wav -s MALE --speed 1.2
new TinyTTS(options?)| Option | Type | Default | Description |
|---|---|---|---|
| modelPath | string | (auto-download) | Path to ONNX model file |
tts.speak(text, options?)| Option | Type | Default | Description |
|---|---|---|---|
| output | string | 'output.wav' | Output WAV file path |
| speaker | string | 'MALE' | Speaker ID (MALE or FEMALE) |
| speed | number | 1.0 | Speech speed (0.3–3.0) |
Returns: Promise<Buffer> — WAV audio data (also saves to file if output is set)
tts.dispose()Release ONNX session resources.
g2p_en)| Metric | Value |
|---|---|
| Parameters | 1.6M |
| Model size | ~3.4 MB (ONNX FP16) |
| Sample rate | 44.1 kHz |
| CPU speed | ~53x real-time |
| Language | English |
Also available on PyPI with the same G2P output:
pip install tiny-tts
from tiny_tts import TinyTTS
tts = TinyTTS()
tts.speak("Hello world!", output_path="hello.wav")
Apache License 2.0
FAQs
Ultra-lightweight text-to-speech (1.6M params). Pure Node.js inference via ONNX Runtime — zero Python dependency.
We found that tiny-tts demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer 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
A critical vm2 sandbox escape can allow untrusted JavaScript to break isolation and execute commands on the host Node.js process.

Research
Five malicious NuGet packages impersonate Chinese .NET libraries to deploy a stealer targeting browser credentials, crypto wallets, SSH keys, and local files.

Security News
pnpm 11 turns on a 1-day Minimum Release Age and blocks exotic subdeps by default, adding safeguards against fast-moving supply chain attacks.