azure-tts-client


Nameazure-tts-client JSON
Version 0.1.2 PyPI version JSON
download
home_pageNone
SummaryAzure Text-to-Speech Terminal Client
upload_time2025-10-21 14:43:34
maintainerNone
docs_urlNone
authorNone
requires_python>=3.14
licenseNone
keywords azure cli speech-synthesis terminal text-to-speech tts
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Azure TTS Client

A terminal-based Text-to-Speech client for Azure Cognitive Services, built with [Textual](https://textual.textualize.io/).

## 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:

```bash
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](https://portal.azure.com)
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:

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

Run with uv:

```bash
uv run -m azure_tts_client
```

## Requirements

- Python 3.10+
- Azure Speech API key

## Publishing to PyPI

### Prerequisites

1. Set up PyPI credentials:
   - Create an account on [PyPI](https://pypi.org)
   - Generate an API token at https://pypi.org/manage/account/token/
   - Store the token for publishing

### Publishing Steps

1. Update the version in [pyproject.toml](pyproject.toml)

2. Build the package:
```bash
uv build
```

3. Publish to PyPI:
```bash
uv publish
```

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

Alternatively, set the token as an environment variable:
```bash
export UV_PUBLISH_TOKEN=pypi-your-api-token-here
uv publish
```

To publish to TestPyPI first:
```bash
uv publish --publish-url https://test.pypi.org/legacy/
```

## Contributing

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

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "azure-tts-client",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.14",
    "maintainer_email": null,
    "keywords": "azure, cli, speech-synthesis, terminal, text-to-speech, tts",
    "author": null,
    "author_email": "Steins Z <steins.z@foxmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/69/b1/b23dfe5333d2e7b88de8b4cb4f43e48fc0243fce9bda7da3cbb34f82b434/azure_tts_client-0.1.2.tar.gz",
    "platform": null,
    "description": "# Azure TTS Client\n\nA terminal-based Text-to-Speech client for Azure Cognitive Services, built with [Textual](https://textual.textualize.io/).\n\n## Features\n\n- Multiple voice options (English, French, German, Spanish, Chinese)\n- Beautiful terminal UI with live playback\n- Save audio to WAV files\n- Secure API key storage\n- Fast and lightweight\n\n## Usage\n\n### Running the app\n\nRun directly without installation:\n\n```bash\nuvx azure-tts-client\n```\n\n### First-time setup\n\nOn first launch, you'll be prompted to enter your Azure Speech API key. The key will be saved securely to `~/.azure_tts_env`.\n\nTo get an Azure Speech API key:\n1. Go to [Azure Portal](https://portal.azure.com)\n2. Create a Speech Service resource\n3. Copy the API key from the resource\n\n### Using the app\n\n1. **Type your text** in the text area\n2. **Select a voice** from the dropdown menu\n3. **Click Play** to hear the speech\n4. **Click Save** to export audio to `output.wav`\n5. **Click Clear Text** to reset the input\n\n## Development\n\n### Local development\n\nClone the repository:\n\n```bash\ngit clone <repository-url>\ncd azure-client-tts\n```\n\nRun with uv:\n\n```bash\nuv run -m azure_tts_client\n```\n\n## Requirements\n\n- Python 3.10+\n- Azure Speech API key\n\n## Publishing to PyPI\n\n### Prerequisites\n\n1. Set up PyPI credentials:\n   - Create an account on [PyPI](https://pypi.org)\n   - Generate an API token at https://pypi.org/manage/account/token/\n   - Store the token for publishing\n\n### Publishing Steps\n\n1. Update the version in [pyproject.toml](pyproject.toml)\n\n2. Build the package:\n```bash\nuv build\n```\n\n3. Publish to PyPI:\n```bash\nuv publish\n```\n\nYou'll be prompted for your PyPI token during publish.\n\nAlternatively, set the token as an environment variable:\n```bash\nexport UV_PUBLISH_TOKEN=pypi-your-api-token-here\nuv publish\n```\n\nTo publish to TestPyPI first:\n```bash\nuv publish --publish-url https://test.pypi.org/legacy/\n```\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Azure Text-to-Speech Terminal Client",
    "version": "0.1.2",
    "project_urls": null,
    "split_keywords": [
        "azure",
        " cli",
        " speech-synthesis",
        " terminal",
        " text-to-speech",
        " tts"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "db5743f23c48e21ec2a72172c95716d7fcb2cd105680c3a1f69c2f9666a57ff8",
                "md5": "3532c462da2d72c75172befd953e66a4",
                "sha256": "de3d35f91bb0d7dd1ba2eb670c38eefa881a93f88428554e02fa675ec280e6b5"
            },
            "downloads": -1,
            "filename": "azure_tts_client-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3532c462da2d72c75172befd953e66a4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.14",
            "size": 7902,
            "upload_time": "2025-10-21T14:43:33",
            "upload_time_iso_8601": "2025-10-21T14:43:33.755185Z",
            "url": "https://files.pythonhosted.org/packages/db/57/43f23c48e21ec2a72172c95716d7fcb2cd105680c3a1f69c2f9666a57ff8/azure_tts_client-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "69b1b23dfe5333d2e7b88de8b4cb4f43e48fc0243fce9bda7da3cbb34f82b434",
                "md5": "d7f391e5e7381bd347ad1cfb8212f142",
                "sha256": "23cb119e552b880d5928d99f0959eaf0abc9e162da4808bce66c7f420034ced3"
            },
            "downloads": -1,
            "filename": "azure_tts_client-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "d7f391e5e7381bd347ad1cfb8212f142",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.14",
            "size": 14062,
            "upload_time": "2025-10-21T14:43:34",
            "upload_time_iso_8601": "2025-10-21T14:43:34.873471Z",
            "url": "https://files.pythonhosted.org/packages/69/b1/b23dfe5333d2e7b88de8b4cb4f43e48fc0243fce9bda7da3cbb34f82b434/azure_tts_client-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-21 14:43:34",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "azure-tts-client"
}
        
Elapsed time: 1.30341s