# Reuse The Theme And UI Components

> Build UI without breaking consistency, then upgrade and update tokens across the whole app yourself.

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

## Objectives

- Put each visual change in a feature-local Composable, a reusable component or a theme token
- Only extract a shared component when a second caller proves the contract is stable

## In this lesson

1. Lesson Goal
2. Part 1: Don't Aim For 100% Reuse
3. Part 2: Read One Composable Through Three Layers
4. Part 3: What Theme Tokens Actually Do
5. Part 4: A Light Rule For Extracting
6. Part 5: Drill, Change A Token And Then Hardcode It
7. Code Reading Path
8. Bad Smells
9. Key Points

## 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: [Build A Compose Screen From State](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-04-compose-screens-from-state.md)
- Next lesson: [Compose Multiplatform Resources And Localization](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-06-compose-multiplatform-resources-i18n.md)
