Jetpack Compose makes it easy to implement a design system and give your app a consistent look and feel with theming, components, and more.

The following pages provide details on how to design and implement your design system:

- [Material Design 3](https://developer.android.com/develop/ui/compose/designsystems/material3): Learn how to use[Google's design system](https://m3.material.io/)to build your product in Compose.
- [Migrating from Material 2 to Material 3](https://developer.android.com/develop/ui/compose/designsystems/material2-material3): Learn how to migrate your app from Material Design 2 to Material Design 3 in Compose.
- [Custom design systems](https://developer.android.com/develop/ui/compose/designsystems/custom): Learn how to implement a custom design system in Compose, and how to adapt existing Material Design composables to handle this.
- [Anatomy of a theme](https://developer.android.com/develop/ui/compose/designsystems/anatomy): Learn about the lower-level constructs and APIs used by`MaterialTheme`and custom design systems.
- [Migrating XML themes to Compose](https://developer.android.com/develop/ui/compose/designsystems/views-to-compose): Learn how to migrate your View-based XML themes to Compose.

### Samples

The following samples demonstrate design systems in Jetpack Compose:

## Recommended for you

- Note: link text is displayed when JavaScript is off
- [Material Design 2 in Compose](https://developer.android.com/develop/ui/compose/designsystems/material)
- [Custom design systems in Compose](https://developer.android.com/develop/ui/compose/designsystems/custom)
- [Anatomy of a theme in Compose](https://developer.android.com/develop/ui/compose/designsystems/anatomy)