Skip to content

feat: add scalable i18n workflow and language sync - #6

Merged
markusleben merged 2 commits into
mainfrom
feat/multilanguage-contributor-flow
Feb 16, 2026
Merged

markusleben merged 2 commits into
mainfrom
feat/multilanguage-contributor-flow

Conversation

@markusleben

Copy link
Copy Markdown
Owner

Summary

  • add end-to-end i18n foundation with dynamic locale discovery and fallback handling
  • localize recorder/editor/settings/export/tray and Apple Intelligence generation paths for en/de
  • replace hardcoded language pills with scalable language dropdown and contributor-friendly locale file workflow
  • add i18n validation script, specs, docs breadcrumbs/choices, and coverage-complete regression tests

Verification

  • swiftc -typecheck src-tauri/swift/stepcast_ai_helper.swift src-tauri/swift/stepcast_ai_helper_descriptions.swift src-tauri/swift/stepcast_ai_helper_vision.swift
  • cd src-tauri && cargo test --quiet
  • npm run i18n:check
  • npm test
  • npm run build
  • npm run test:coverage

@markusleben
markusleben merged commit f202b2b into main Feb 16, 2026
3 checks passed
@markusleben
markusleben deleted the feat/multilanguage-contributor-flow branch February 16, 2026 13:41

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b1bdf1674e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src-tauri/src/lib.rs
}
};
let availability =
match crate::apple_intelligence::availability(Some(crate::i18n::system_locale())) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use selected language for AI eligibility checks

This call always resolves availability with system_locale, so when a user picks a non-system app language (e.g. German UI on an English macOS), the eligibility reason can still come back in the system language and is then interpolated into localized settings text. That creates mixed-language AI eligibility messaging despite the new language setting; this command should accept and use the app-selected language, like generate_step_descriptions and export_guide now do.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant