supertone-inc/supertonic
55.4
Adequate · 27 September 2026
7.7k
lines of production code
JavaScript
with Swift, C++, Go, Java, Dart, C#, Rust, Python
5
measurements over time
What this system is
This system is a multilingual text-to-speech inference engine, specifically the Supertonic 3 model, exposed through SDKs and example applications across multiple programming languages and platforms. It enables users to synthesize speech in over 30 languages with adjustable speed, automatic long-form text chunking, and batch processing capabilities. The project provides reference implementations for C++, C\#, Flutter, Go, Java, Node.js, Python, Rust, Swift, and web environments, all leveraging ONNX Runtime for local inference.
Features
Add Supertonic 3 Flutter example application
A new Flutter example project has been added to demonstrate how to integrate Supertonic 3 using the ONNX Runtime. This example requires Flutter SDK version 3.5.0 or higher and relies on the \flutter\_onnxruntime\ package. While the underlying library supports multiple platforms, this specific example has only been tested and verified on macOS. Users must download the archived Supertonic 3 model assets locally before running the demo.
flutter · high confidence
Initial macOS platform support added
This change introduces the foundational macOS project structure for the Flutter application, enabling the app to run on macOS. It includes the Xcode project configuration files (such as Info.plist and entitlements for sandboxing), the Swift application entry point (AppDelegate and MainFlutterWindow), and the generated plugin registrant which registers audio\_session, flutter\_onnxruntime, and just\_audio plugins for the macOS target.
flutter/macos · high confidence
Multilingual support, speech speed control, and batch generation in TTS examples
The Rust and Swift example applications now support multilingual text-to-speech synthesis by accepting a language code (e.g., 'en', 'ko', 'ja') for each input text, with validation against a list of supported languages and automatic language-tagging of the input text. Users can also control the speech speed via a new \--speed\ parameter (default 1.05) and generate audio for multiple text-style pairs simultaneously using a new \--batch\ mode, which processes inputs in bulk rather than one-by-one. Additionally, the text normalization logic has been enhanced to remove emojis, standardize punctuation and symbols, and handle long-form text via a new chunking mechanism that splits text into manageable segments before synthesis.
rust/src, swift/Sources · high confidence
Multilingual support, speed control, and long-form text chunking
The C\# inference example now supports 31 languages via a new --lang argument, allowing users to synthesize speech in languages such as Korean and Japanese alongside English. A new --speed parameter lets users adjust the speech rate (default 1.05), and long texts are automatically split into chunks with natural pauses to generate a single continuous audio file. Batch mode (--batch) is also introduced for processing multiple voice-text pairs simultaneously, which disables the automatic chunking feature. Additionally, text preprocessing has been enhanced with emoji removal, symbol normalization, and punctuation handling to improve synthesis quality.
csharp · high confidence
Supertonic 3 Flutter example with multilingual TTS and macOS support
The Flutter example application has been updated to Supertonic 3, introducing a new text-to-speech interface that supports 32 languages including Korean, Japanese, and Arabic. The app now features robust text preprocessing with NFKD decomposition for Hangul and Latin accented characters, emoji removal, and symbol normalization to improve synthesis quality. Users can generate speech in multiple languages, play audio directly within the app, and save generated WAV files to their device's downloads directory. The example also adds macOS platform support.
flutter/lib · high confidence
Behavioural changes
Multilingual support, speech speed control, and automatic long-form text chunking
The Go and Java TTS inference examples now support 31 languages via a new --lang argument, allowing users to specify the language for each text input. A --speed parameter (default 1.05) has been added to control speech synthesis rate. Additionally, long-form inference is now handled automatically: without the --batch flag, texts are split into chunks and synthesized with 0.3-second pauses between segments. Batch mode (--batch) processes multiple voice-text-language pairs simultaneously but disables automatic chunking. The default denoising steps increased from 5 to 8, and asset paths were updated to use relative paths (../assets).
go, java · high confidence
Supertonic 3 C++ inference: multilingual support, speed control, and long-form chunking
The C++ example now supports Supertonic 3 with 31 languages (via the new --lang argument), adjustable speech speed (--speed, default 1.05), and automatic text chunking for long-form synthesis (disabled in batch mode). It also fixes text normalization (e.g., curly quotes) and updates default denoising steps from 5 to 8, with adjusted asset paths and batch/multilingual examples in the README.
cpp · high confidence
Supertonic 3 web demo adds multilingual support, voice expansion, and speed control
The web demo has been updated to support Supertonic 3, introducing a language selector for 31 languages (with text preprocessing now wrapping input in language tags) and expanding voice presets from four to ten (M1–M5, F1–F5). Users can now adjust speech speed via a new slider (default 1.05) and benefit from improved text normalization (emoji removal, symbol replacement) and automatic text chunking for long-form generation. The default denoising steps increased from 5 to 8, and the build configuration now serves model assets from the repository root.
web · high confidence
Supertonic 3: Multilingual support, speed control, and long-form synthesis
The Python and Node.js inference examples now support Supertonic 3, introducing 31-language synthesis via a new --lang argument, adjustable speech speed via --speed (default 1.05), and automatic text chunking for long-form generation that combines segments with natural pauses. Batch mode (--batch) is available for processing multiple voice-text pairs simultaneously, and the default denoising steps have increased from 5 to 8 for improved quality. Path references to assets have been updated to use relative paths (../assets), and filename sanitization now supports Unicode characters.
nodejs, py · high confidence
iOS demo app updated for Supertonic 3 with language selection and simplified synthesis
The iOS example app has been upgraded to support Supertonic 3, introducing a new Language picker in the UI that allows users to select from a wide range of supported languages (including English, Korean, Japanese, and many others) or use the auto-detect option. The synthesis API has been simplified: the service no longer requires a warmup phase or returns detailed timing metadata (elapsed/audio seconds) in the result object, instead returning just the audio URL. The view model now calculates audio duration locally using AVAudioFile and defaults the NFE (number of function evaluations) to 8. The text input field no longer displays a placeholder hint, and the preview code has been removed.
ios/ExampleiOSApp · high confidence
Test coverage
Repository archived and Supertonic 3 testing infrastructure added
The repository has been officially archived, with development discontinued and source code preserved under the supertone-oss-archive organization; the README now directs users to archived model weights and local inference instructions. Additionally, the test suite (test\_all.sh) has been updated to include long-form inference tests for Python and JavaScript, supports multilingual batch testing, and adds local toolchain fallbacks for .NET and Java.
(repo-wide) · high confidence
Dependencies
Initial SDK setup and dependency updates across Flutter, C\#, Go, and Rust
This change introduces the initial project structure and lockfiles for the Flutter macOS example (including CocoaPods and pub dependencies like flutter\_onnxruntime and just\_audio), while updating dependencies in the C\# (adding RollForward for .NET 9), Go (adding golang.org/x/text), and Rust (upgrading ndarray to 0.17 and adding regex) SDKs.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 44 → 55 (+11.4)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 95 → 88 (-7.2)
- Architecture 69 → 97 (+28.5)
- Maturity 62 → 57 (-5.0)
- Readiness 17 → 36 (+18.9)
- Security 73 → 86 (+13.2)
Resolved (65)
- Dimension evaluation failed
- FileTooLong: nodejs/helper.js (nodejs/helper.js)
- FileTooLong: web/helper.js (web/helper.js)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- Hotspot: csharp/Helper.cs (csharp/Helper.cs)
- LLM evaluation failed
- Medium CVE: GO-2024-3105 (go/go.mod)
- Medium CVE: GO-2024-3106 (go/go.mod)
- Medium CVE: GO-2024-3107 (go/go.mod)
- Medium CVE: GO-2025-3373 (go/go.mod)
- Medium CVE: GO-2025-3420 (go/go.mod)
- Medium CVE: GO-2025-3447 (go/go.mod)
- Medium CVE: GO-2025-3503 (go/go.mod)
- Medium CVE: GO-2025-3563 (go/go.mod)
- Medium CVE: GO-2025-3750 (go/go.mod)
- …and 45 more
New (48)
- Coverage not measured — no coverage collector is wired up
- Duplicated block (5 lines × 2) (swift/Sources/Helper.swift)
- End-of-life runtime: .NET net9.0
- ExampleONNX.main (cognitive 19) (java/ExampleONNX.java)
- ExampleONNX.main (cognitive 20) (swift/Sources/ExampleONNX.swift)
- ExampleONNX.parseArgs (cognitive 27) (java/ExampleONNX.java)
- ExampleONNX.parseArgs (cyclomatic 20) (java/ExampleONNX.java)
- FileTooLong: Sources/Helper.swift (swift/Sources/Helper.swift)
- FileTooLong: go/helper.go (go/helper.go)
- FileTooLong: java/Helper.java (java/Helper.java)
- FileTooLong: src/helper.rs (rust/src/helper.rs)
- Helper.chunkText (cognitive 84) (java/Helper.java)
- Helper.chunkText (cyclomatic 26) (java/Helper.java)
- Helper.loadVoiceStyle (cognitive 22) (java/Helper.java)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- High CVE: [GHSA redacted] (py/uv.lock)
- Medium CVE: [GHSA redacted] (py/uv.lock)
- Medium CVE: [GHSA redacted] (py/uv.lock)
- Medium CVE: GO-2024-3105 (go/go.mod)
- …and 28 more
Changes since last survey
- 2 commits — 2 feature/other, 0 fixes
By area
- (root) — 2 commits
Notable commits
- change: docs: announce archive and preserve historical service notices
- change: docs: use archived models and local inference setup
Architecture
- Unchanged — 1 containers · 0 contexts · 0 edges
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
supertone-inc/supertonic was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 27 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 1e9799e964ea4c0dad7cde993b65c3c813a7b373 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-d00c643c3f66.