@Override
              public JSIModuleProvider<UIManager> getJSIModuleProvider() {
                final ComponentFactory componentFactory = new ComponentFactory();
                CoreComponentsRegistry.register(componentFactory);

                // Here we register a Components Registry.
                // The one that is generated with the template contains no components
                // and just provides you the one from React Native core.
                MainComponentsRegistry.register(componentFactory);

                final ReactInstanceManager reactInstanceManager = getReactInstanceManager();

                ViewManagerRegistry viewManagerRegistry =
                    new ViewManagerRegistry(
                        reactInstanceManager.getOrCreateViewManagers(reactApplicationContext));

                return new FabricJSIModuleProvider(
                    reactApplicationContext,
                    componentFactory,
                    ReactNativeConfig.DEFAULT_CONFIG,
                    viewManagerRegistry);
              }
A {@link ReactNativeHost} that helps you load everything needed for the New Architecture, both
TurboModule delegates and the Fabric Renderer.

<p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
`newArchEnabled` property). Is ignored otherwise.
template/android/app/src/main/java/com/helloworld/newarchitecture/MainApplicationReactNativeHost.java