-
Notifications
You must be signed in to change notification settings - Fork 20
Open
Labels
good first issueGood for newcomersGood for newcomers
Description
Background
Multilingual transcription support is already implemented in backend/docker/docs via WHISPER_LANGUAGE (including optional auto-detect and continued .en compatibility).
This issue should build on that work by making language selection user-accessible in the UI, instead of env-only configuration.
Objective
Let users choose transcription language from the app UI and route that value through the existing transcription pipeline without changing current defaults.
Scope
- Add a transcription language selector in UI settings (or recording/transcription panel).
- Include
Auto (default)option. - Include a small set of common language options first (e.g., English, Spanish, French, etc.).
- Wire selected value into existing transcription request/config path.
- Reuse current backend support for
WHISPER_LANGUAGE. - No model/engine changes required.
- Persist user selection.
- Keep it across reload/restart (existing settings store/local persistence).
- Keep current behavior unchanged when not set.
- Default remains auto/English-compatible existing flow.
Out of Scope
- New model integrations.
- Full locale/i18n for all UI text.
- Advanced language auto-routing heuristics.
- Major backend refactors.
Detailed Success Criteria
- Functional
- User can select transcription language from UI.
- Selection is applied to new transcription runs.
Autooption works and maps to existing optional language behavior.
- Backward compatibility
- English transcription remains unchanged when user keeps default.
- Existing
.enmodel workflows still work. - Docker/SAM/local workflows continue functioning.
- Reliability
- Invalid/unsupported UI value is safely rejected or falls back to default.
- Clear UI/console error path for bad language config.
- Persistence
- Selected language persists across app restart/reload.
- Test coverage
- Add tests for:
- default (
Auto) behavior - explicit language selection (at least one non-English case path)
- persistence and restore
- fallback on invalid value
- default (
- Documentation
- Add a short docs section:
- how UI selection relates to
WHISPER_LANGUAGE - precedence rules (UI override vs env default)
- how UI selection relates to
Suggested Acceptance Checklist
- UI selector exists with
Auto+ language options - Transcription requests use selected language
- Default behavior unchanged if user does nothing
- Existing multilingual backend flow still passes
- Docs updated with precedence + examples
- Tests added and passing
Rationale
- Builds directly on the completed multilingual backend/env work.
- Small, high-impact UX improvement.
- Keeps implementation low-risk by reusing existing
WHISPER_LANGUAGEsupport.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
good first issueGood for newcomersGood for newcomers