---
# System prepended metadata

title: Consume ThemeProvider in TMP

---

# Consume ThemeProvider in TMP

## Problem
We want to be able to use converged components (e.g. `react-button`) in TMP. For theming these components, `ThemeProvider` needs to be used. Currently `ThemeProvider` can't just be used as is yet in TMP. We need to have a migraion story from exising `Teams` theme / style overrides to the new `theme` interface supported by `ThemeProvider`. We also need to support using emotion/fela renderer.

## Appetite
Our goal is not to replace `Provider` in `react-northstar` with `ThemeProvider`. Our goal is to ensure `ThemeProvider` supports all the functionalities needed to theme converged components for Teams' needs.

## Solution
Working together with Mak/Levi/Miro to start replacing existing northstar `Button` from usages in TMP with `Button` from `react-button` and `ThemeProvider`.

We will likely be discovering more work needed. But here are the ones we know we are missing:
- A migraion story from exising `Teams` theme / style overrides to the new `theme` interface supported by `ThemeProvider`
- Support using emotion/fela renderer.

## Notes
- Can we target merging react-button actually in TMP master
- Be aware of multiple themes in TMP codebase
- Consider bringing react-button online in doc-site
    - Allows using visual tests to make sure button supports teams theme

## Risks (Rabbit holes)
For v7 to v8, v7 theme could be mapped to v8 theme/tokens. This provides the migration story for users who uses the `Button`. Similar migraion/mapping strategy might not be applicable for Teams theme.

## Out of scope (No-gos)
Replace `Provider` in `react-northstar` with `ThemeProvider` from `react-theme-provider`.