# Compose Multiplatform Resources And Localization

> Shared resources in Compose Multiplatform: the composeResources folder, each module's Res class, reading strings, images, fonts and files from commonMain, and keeping the Vietnamese version complete with LocaleParityTest.

- URL: https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-06-compose-multiplatform-resources-i18n
- Course: [Mobile Action Pro](https://dantech.academy/en/courses/kotlin-accelerator.md)
- Module: Compose UI from State
- Duration: 15 min
- Difficulty: beginner
- Access: Enrolled students
- Tiếng Việt: https://dantech.academy/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-06-compose-multiplatform-resources-i18n.md

## Objectives

- Know where each module's resources live and how the Res class is generated
- Pick the right stringResource, getString, painterResource, Font or Res.getUri for each need
- Explain why a missing translation quietly shows English, and use LocaleParityTest to catch it

## In this lesson

1. Lesson Goal
2. Part 1: From R.string To Res.string
3. Part 2: The composeResources Folders In The Repo
4. Part 3: One Res Class Per Module
5. Part 4: Reading Resources In Code
6. Part 5: Multiple Languages With values-vi
7. Part 6: LocaleParityTest Blocks Silent Bugs
8. Part 7: Drill, Break A Translation
9. Part 8: The Android Packaging Trap
10. Troubleshooting Table
11. Checkpoint
12. Bad Smells
13. References
14. Key Takeaways

## Study with an AI agent

The full lesson is for students of this course. Students open the lesson on the web and press **Markdown** to copy all of it, then paste it into Claude, ChatGPT, Cursor or whichever agent you use. Faster: mint a token at `/profile/ai-agents` and your agent reads lessons over MCP.

- [Join the course](https://dantech.academy/en/kotlin-accelerator/checkout)

---

- Previous lesson: [Reuse The Theme And UI Components](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-05-reuse-theme-and-ui-components.md)
- Next lesson: [Why Is A Reducer Useful?](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-01-understand-why-reducers-help.md)
