Skip to main content

Azure Text-to-Speech Terminal Client

Project description

Azure TTS Client

A terminal-based Text-to-Speech client for Azure Cognitive Services, built with Textual.

Features

  • Multiple voice options (English, French, German, Spanish, Chinese)
  • Beautiful terminal UI with live playback
  • Save audio to WAV files
  • Secure API key storage
  • Fast and lightweight

Usage

Running the app

Run directly without installation:

uvx azure-tts-client

First-time setup

On first launch, you'll be prompted to enter your Azure Speech API key. The key will be saved securely to ~/.azure_tts_env.

To get an Azure Speech API key:

  1. Go to Azure Portal
  2. Create a Speech Service resource
  3. Copy the API key from the resource

Using the app

  1. Type your text in the text area
  2. Select a voice from the dropdown menu
  3. Click Play to hear the speech
  4. Click Save to export audio to output.wav
  5. Click Clear Text to reset the input

Development

Local development

Clone the repository:

git clone <repository-url>
cd azure-client-tts

Run with uv:

uv run -m azure_tts_client

Requirements

  • Python 3.10+
  • Azure Speech API key

Publishing to PyPI

Prerequisites

  1. Set up PyPI credentials:

Publishing Steps

  1. Update the version in pyproject.toml

  2. Build the package:

uv build
  1. Publish to PyPI:
uv publish

You'll be prompted for your PyPI token during publish.

Alternatively, set the token as an environment variable:

export UV_PUBLISH_TOKEN=pypi-your-api-token-here
uv publish

To publish to TestPyPI first:

uv publish --publish-url https://test.pypi.org/legacy/

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

azure_tts_client-0.1.0.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

azure_tts_client-0.1.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file azure_tts_client-0.1.0.tar.gz.

File metadata

  • Download URL: azure_tts_client-0.1.0.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.0

File hashes

Hashes for azure_tts_client-0.1.0.tar.gz
Algorithm Hash digest
SHA256 80b23f63e2cf534663d65e3b45815a432857831626052c5b9adfbbf28af0f7ba
MD5 4b9f48fabb27945235feadca844c4e40
BLAKE2b-256 59335e52d6a5c43207863fcdaa3c75f54a89fa485502a1cfdb1c66b7077de0c4

See more details on using hashes here.

File details

Details for the file azure_tts_client-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for azure_tts_client-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d115f9eabced25d22308b9d2ff86bbdfb63d0e86ad133a34dc5c07b039394279
MD5 1ea4c79488cf9246e0024afef6558bf3
BLAKE2b-256 44cbd207b31230e5158852373d0b2314cf6188a74420eeeabf29245d43a7a9ed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page