Custom Localization and AI Integration for Apps
Baut eine SwiftUI-Sprachauswahl, die unabhängig von der Systemsprache funktioniert.
Baut eine SwiftUI-Sprachauswahl, die unabhängig von der Systemsprache funktioniert.
Der Prompt
Act as an App Localization Expert. You are tasked with setting up a user-preference-based localization architecture in an application independent of the phone's system language.
Your task includes:
1. **LanguageManager Class**: Create a `LanguageManager` class using the `ObservableObject` protocol. Store the user's selected language in `UserDefaults`, with the default language set to 'en' (English). Display a selection screen on the first launch.
2. **Global Locale Override**: Wrap the entire `ContentView` structure in your SwiftUI app with `.environment(\.locale, .init(identifier: languageManager.selectedLanguage))` to trigger translations based on the selected language in `LanguageManager`.
3. **Onboarding Language Selection**: If no language has been selected previously, show a stylish 'Language Selection' screen with English and Turkish options on app launch. Save the selection immediately and transition to the main screen.
4. **AI (LLM) Integration**: Add the user's selected language as a parameter in AI requests (API calls). Update the system prompt to: 'User's preferred language: ${selected_language}. Respond in this language.'
5. **String Catalogs**: Integrate `.stringxcatalog` into your project and add all existing hardcoded strings in English (base) and Turkish.
6. **Dynamic Update**: Ensure that changing the language in settings updates the UI without restarting the app.
7. **User Language Change**: Allow users to change the app's language dynamically at any time.
Rules:
- Ensure seamless user experience during language selection and updates.
- Test functionality for both English and Turkish languages.
Variablen & Platzhalter
Vor dem Einsatz diese Stellen durch eigene Angaben ersetzen:
selected_language
So nutzt du es
Den Prompt-Text kopieren (Button oben) und als System-Prompt bzw. erste Nachricht in ChatGPT, Claude oder einem lokalen Modell einfügen. In ChatGPT lässt er sich unter „Anweisungen für ChatGPT“ dauerhaft hinterlegen.
Der Prompt-Text ist englisch — er funktioniert trotzdem in deutschen Unterhaltungen. Für deutsche Antworten einfach am Ende ergänzen: „Antworte auf Deutsch.“
Im Detail
Ein technischer Prompt für SwiftUI-Entwickler, der eine nutzerpräferenz-basierte Lokalisierung vorgibt – unabhängig von der Systemsprache des Telefons. Kern ist eine LanguageManager-Klasse (ObservableObject), die die gewählte Sprache in UserDefaults speichert und per .environment(.locale, …) global auf die App anwendet, plus ein Onboarding-Screen zur Sprachauswahl beim ersten Start. Nützlich für App-Entwickler, die mehrsprachige Apps bauen, bei denen Nutzer die Sprache unabhängig vom Betriebssystem wählen sollen (z.B. für Communities mit Sprachminderheiten). Der Prompt liefert eine konkrete Architekturvorgabe statt nur allgemeiner Ratschläge und spart Rechercheaufwand. Setzt Grundkenntnisse in SwiftUI voraus, da der generierte Code direkt in eine bestehende Projektstruktur integriert werden muss.
Praxis-Tipp
Lass dir zusätzlich zur LanguageManager-Klasse gleich die Onboarding-View als eigenständige SwiftUI-Komponente generieren, die du direkt einbinden kannst.
Siehe auch
Lizenz & Quelle
- Lizenz: CC0-1.0 (Public Domain)
- Quelle: awesome-chatgpt-prompts (GitHub)
Inhalt ansehen (custom-localization-and-ai-integration-for-apps.txt)
Lade …
Erfahrungen & Kommentare.
Funktioniert der Prompt bei Ihnen? Tipps, Stolperfallen, Varianten — teilen Sie es mit der Community.
Lade Kommentare …
Passt dazu.
aa/cli taste
Legt feste Tech- und Stilvorgaben für CLI-Projekte fest (pnpm, TypeScript, Commander.js, Ordnerstruktur).
Accessibility Auditor
Lässt ChatGPT als Accessibility-Experte eine Website auf WCAG-2.2- und Section-508-Konformität prüfen.
Analyze code scanning security issues and dependency updates if vulnerable
Priorisiert GHAS-Sicherheitsalerts über Repos hinweg und trennt Dependency- von Base-Image-Ursachen.
