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.2.tar.gz (14.1 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.2-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for azure_tts_client-0.1.2.tar.gz
Algorithm Hash digest
SHA256 23cb119e552b880d5928d99f0959eaf0abc9e162da4808bce66c7f420034ced3
MD5 d7f391e5e7381bd347ad1cfb8212f142
BLAKE2b-256 69b1b23dfe5333d2e7b88de8b4cb4f43e48fc0243fce9bda7da3cbb34f82b434

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for azure_tts_client-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 de3d35f91bb0d7dd1ba2eb670c38eefa881a93f88428554e02fa675ec280e6b5
MD5 3532c462da2d72c75172befd953e66a4
BLAKE2b-256 db5743f23c48e21ec2a72172c95716d7fcb2cd105680c3a1f69c2f9666a57ff8

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