Skip to content

Releases: carsonmcrae/ttsnative

TTSNative 2.0.0 (released as Local TTS)

Choose a tag to compare

@github-actions github-actions released this 19 Oct 20:29

A complete rebuild. v1 was a single Gradio script; v2 is a local-first document reader and voice
studio with a React UI and a hardened Python service. Nothing from v1 is required to upgrade — start
fresh with npm install && npm run dev.

Added

  • Reader: upload PDF, DOCX, EPUB, Markdown or TXT (or paste text), read along with sentence
    highlighting, navigate chapters/pages, resume where you left off, keyboard shortcuts and lock-screen
    media controls.
  • Progressive playback: sentences are generated just ahead of the listener and cached, so long
    books start playing in about a second.
  • Voice Library: 54 Kokoro voices with language, gender and upstream quality grades; compare voices
    on the same passage.
  • Voice Studio: create a voice from a 10–20 s recording or an imported clip with live quality checks,
    explicit consent, a test generation, and permanent deletion (optional Chatterbox Turbo engine).
  • Export: WAV or MP3, whole document or a chapter range, single file or one file per chapter with a
    playlist; interrupted exports resume using cached audio.
  • Settings: theme, playback defaults, engine install/remove with sizes and hardware advice, storage
    usage and cache clearing, privacy summary, diagnostics and version information.
  • One-command setup: npm run dev provisions a checksum-verified uv, an isolated Python 3.12
    environment and the default voice model, then starts the API and UI together.
  • Security hardening: loopback binding, Host/CSRF/cross-site checks, CSP, sandboxed document parsing,
    archive/XML attack defences, upload and processing limits, pinned and SHA-256-verified model downloads.
  • Tests (pytest, Vitest, Playwright with real inference), CI workflows, documentation and license inventory.
  • Releases: pushing a version tag checks it against the app version and this changelog, runs the full
    check suite, and publishes the source, the prebuilt web UI, CycloneDX SBOMs and SHA256SUMS.txt
    with signed build provenance.
  • A user guide in the wiki, kept in
    docs/wiki/ and published automatically.
  • A demo video recorded from the running app with its real narration, and a short showcase video whose
    voice-over is spoken by Local TTS (docs/media/, reproducible with npm run media:demo and
    npm run media:promo).
  • Community files: code of conduct, support guide, issue labels and release-note categories.

Changed

  • Kokoro now runs in-process through kokoro-onnx 0.6 with the official v1.1 ONNX export instead of
    spawning the kokoro-tts CLI for every request.

Removed

  • Gradio UI, the "Text Prompts" folder workflow and batch mode (replaced by the library and export).
  • AGPL-licensed transitive dependencies (PyMuPDF, EbookLib).

Fixed

  • PDFs without an outline produced no audio and no error in v1; text PDFs now always extract, and
    scanned PDFs are reported clearly.

Verifying this release

Every file attached below is listed in SHA256SUMS.txt and has a signed build-provenance attestation
from this repository's release workflow. To check a download:

sha256sum --check --ignore-missing SHA256SUMS.txt
gh attestation verify <file> --repo carsonmcrae/local-tts-web-ui

The source archive and SBOMs (CycloneDX 1.5) cover the web app, the server and the optional Chatterbox
worker. To install, follow the Quick start.

TTSNative 1.0.0 (legacy prototype, released as Local TTS)

Choose a tag to compare

@carsonmcrae carsonmcrae released this 19 Oct 20:30

The original single-script Gradio prototype (kokoro_tts_ui.py), tagged for history. It is superseded by 2.0.0, a complete rebuild. For what changed and why, see the legacy audit.

This version is not maintained. Use the latest release instead.