Hi @mortoza_khan ,
The non-UI layer like entities will be completely untouched when you switch the UI technology.
So the Entities, all business logic and all UI code that does not depend on Jmix UI code will work without any changes.
The actual effort for a migration to the new UI layer will be during porting over all your UI logic.
You can generate new FlowUI screens for entities, but all the controller logic you put on your old UI controllers will be lost in any case.
So if you have a big code base with a lot of UI logic, it might make sense to try to introduce own abstractions, or simply pull out as much possible logic outside your controllers into dedicated beans and avoid a lot of compile time dependencies in those beans to Jmix UI code. With that you have prepared a lot and decoupled quite a bit of UI code from the old Vaadin UI.
If you have a small code base in terms of customizations, then regenerating and replicating functionality might be the faster way to go.
In both cases having a good automated test suite in place will help you. If you went the UI integration test route, you will need a lot of adjustments to the tests (depending on how much abstractions you put into your test suite).
For selenium based E2E tests it might be less, but since the DOM elements also changed there will also be changes needed.
Cheers
Mario