Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,10 @@ ELEVENLABS_API_KEY=your-elevenlabs-api-key
GOOGLE_APPLICATION_CREDENTIALS=path/to/google-credentials.json
# or
GOOGLE_SA_PATH=path/to/google-credentials.json

# CereVoice TTS
CEREVOICE_EMAIL=your-cerevoice-email
CEREVOICE_PASSWORD=your-cerevoice-password
```

## Code Style
Expand Down
2 changes: 2 additions & 0 deletions docs/RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ The following secrets need to be configured in the GitHub repository for the aut
- `MICROSOFT_REGION`: Azure TTS region (optional, for testing)
- `ELEVENLABS_API_KEY`: ElevenLabs API key (optional, for testing)
- `GOOGLE_SA_KEY`: Google Cloud service account key in JSON format (optional, for testing)
- `CEREVOICE_EMAIL`: CereVoice Cloud account email (optional, for live testing)
- `CEREVOICE_PASSWORD`: CereVoice Cloud account password (optional, for live testing)

## Versioning

Expand Down
14 changes: 14 additions & 0 deletions docs/TESTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,15 @@ GOOGLE_APPLICATION_CREDENTIALS=path_to_your_google_credentials_json
GOOGLE_SA_PATH=path_to_your_google_service_account_json
```

### CereVoice TTS
```
CEREVOICE_EMAIL=your_cerevoice_email
CEREVOICE_PASSWORD=your_cerevoice_password
# Optional
CEREVOICE_ACCESS_TOKEN=existing_access_token
CEREVOICE_REFRESH_TOKEN=existing_refresh_token
```

You can set these environment variables in a `.env` file in the root of the project.

## Running Tests
Expand Down Expand Up @@ -57,10 +66,15 @@ npm run test:elevenlabs

# Test Google TTS
npm run test:google

# Test CereVoice unit coverage
npm run test:cerevoice
```

If your credentials for the specified engine are invalid, the tests will be skipped with a clear message.

`npm run test:cerevoice` runs mocked unit coverage for auth, voice mapping, synthesis request shape, metadata fetching, and word-boundary conversion. It does not require live CereVoice credentials.

## Running Examples

The project includes a unified example framework that can demonstrate all TTS engines or specific engines.
Expand Down
1 change: 1 addition & 0 deletions examples/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ The following engines work in browser environments:
- **Azure TTS** - Requires subscription key + region
- **Google Cloud TTS** - Requires service account JSON
- **AWS Polly** - Requires access key + secret + region
- **CereVoice Cloud** - Requires email + password, supports SSML and word-boundary metadata
- **Wit.ai TTS** - Requires API token
- **Watson TTS** - Requires API key + URL

Expand Down
4 changes: 4 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@
"test:env": "node load-env.js && jest",
"test:tts": "node run-tts-tests.cjs",
"test:azure": "node run-tts-tests.cjs azure",
"test:cerevoice": "cross-env NODE_OPTIONS=--experimental-vm-modules jest src/__tests__/cerevoice.test.ts",
"test:elevenlabs": "node run-tts-tests.cjs elevenlabs",
"test:google": "node run-tts-tests.cjs google",
"test:gemini": "node run-tts-tests.cjs gemini",
Expand Down Expand Up @@ -119,6 +120,8 @@
"tts",
"text-to-speech",
"azure",
"cerevoice",
"cereproc",
"google",
"gemini",
"polly",
Expand Down Expand Up @@ -251,6 +254,7 @@
"@google-cloud/text-to-speech": "^6.4.0"
},
"gemini": {},
"cerevoice": {},
"elevenlabs": {
"@elevenlabs/elevenlabs-js": "^2.32.0"
},
Expand Down
Loading
Loading