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.1.tar.gz (19.0 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.1-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for azure_tts_client-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f3e50f136092276a97be605962d52179ae34c8ea4b424ceddc4e887c160461d0
MD5 4d24641dac5e8f1756421810d23df700
BLAKE2b-256 000fb2c9fe6ffb6ff1ee0e6e33f9070ad50da9fe59f68024c849a3577734413d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for azure_tts_client-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6695ea6c0f2fd1e948bf1ca7d6dffa1f07cf4a3ffd5e74de1a2c2782d2610eac
MD5 4c077fffefce90aafb17ac37af3e3c11
BLAKE2b-256 a7dd70083290405ff1f4d30f09446a8ea2e1d0db121815fae5293322a9b3ca54

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