Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add elevenlabs-tts extension #15992

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

lachiejames
Copy link

@lachiejames lachiejames commented Dec 21, 2024

Description

ElevenLabs TTS is a powerful text-to-speech extension that brings premium AI voices to Raycast. Simply select any text in any application, trigger the command with your hotkey, and hear natural-sounding speech instantly.

Key features:

  • 🎭 20+ premium AI voices with unique personalities and accents
  • ⚡️ Real-time streaming for instant playback
  • 🎛️ Fine-tune voice stability and clarity
  • 🔊 Stop/start control with the same hotkey
  • 🌐 Works with any text-based application

Screencast

Watch Demo

Extension Setup

Voice Selection

Technical Implementation Highlights

  • WebSocket-based streaming for efficient audio delivery
  • Event-driven architecture for robust audio processing
  • Temporary file management for memory-efficient playback
  • Comprehensive error handling with user-friendly messages
  • Full test coverage for core functionality

Checklist

  • I read the extension guidelines
  • I read the documentation about publishing
  • I ran npm run build and tested this distribution build in Raycast
  • I checked that files in the assets folder are used by the extension itself
  • I checked that assets used by the README are placed outside of the metadata folder

- docs: update README (raycast#23)
- docs: add changelog (raycast#22)
- feat: add Node.js version management and CI unit testing workflow (raycast#21)
- security: bump cross-spawn to 7.0.6 (raycast#20)
- fix: removes refs to default hotkey (raycast#19)
- fix: refactor into separate files (raycast#18)
- fix: add more comments (raycast#17)
- fix: add unit tests (raycast#16)
- fix: refactor into AudioManager (raycast#15)
- fix: remove \'play-sound\' dependency (raycast#14)
- Revert "fix: refactor into separate files (raycast#10)" (raycast#13)
- Revert "fix: add more README instructions (raycast#11)" (raycast#12)
- fix: add more README instructions (raycast#11)
- fix: refactor into separate files (raycast#10)
- feat: rename extension to \'ElevenLabs TTS\' (raycast#9)
- fix: update extension icon (raycast#8)
- fix: run prettier (raycast#7)
- fix: pin dependencies (raycast#6)
- fix: add more comments (raycast#5)
- fix: add more logging and error handling (raycast#4)
- fix: use websockets for faster TTS streaming (raycast#3)
- fix: add toasts for UI feedback (raycast#2)
- feat: use elevenlabs for TTS since it\'s better (raycast#1)
- initial commit
@raycastbot raycastbot added the new extension Label for PRs with new extensions label Dec 21, 2024
@raycastbot
Copy link
Collaborator

raycastbot commented Dec 21, 2024

Congratulations on your new Raycast extension! 🚀

Due to our current reduced availability, the initial review may take up to 10-15 business days 🎄

Once the PR is approved and merged, the extension will be available on our Store.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I deleted these files and republished, but they haven't been removed from this PR. Possible bug in npm run publish?

@thomaspaulmann
Copy link
Member

Wow that's a very cool extension! Love the approach for streaming the audio 👌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new extension Label for PRs with new extensions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants