> Markdown version of [Converting Legacy UIs](https://vaadin.com/docs/v23/tools/mpr/introduction/3-legacy-uis). Section index: [llms.txt](https://vaadin.com/docs/v23/tools/llms.txt)

# Step 3 - Converting Legacy UIs

The UI object, which represents the `<body>` element in the page, is controlled by Flow when running the MPR, so anything extending `UI` should be converted. Actually, `UI` class shouldn’t be used for layout or navigation handling anymore. At the end of step 3, you shouldn’t have any `UI` class unless you have a real use case for it.

Depending on what’s used in the project, you have several conversion paths:

<!-- vale Vaadin.FirstPerson = NO -->

- My application uses [Spring Boot →](https://vaadin.com/docs/v23/tools/mpr/introduction/3-spring-boot.md)

- My application uses [CDI →](https://vaadin.com/docs/v23/tools/mpr/introduction/3-cdi.md)

- My application uses [Navigator →](https://vaadin.com/docs/v23/tools/mpr/introduction/3-navigator.md)

- My application doesn’t use any of those. Continue to [Converting a UI →](https://vaadin.com/docs/v23/tools/mpr/introduction/3-no-framework.md)

`648FAE8F-BF92-47A0-9BEF-277510550E00`
