Frontend Administration with IModelApp
An instance of IModelApp provides the services needed by the frontend in an interactive iTwin.js app. Services include:
- Connecting to an IModelHost to access iModels.
- Management of Views using ViewManager
- Tools and Drawing aids
- Notifications
- Localization support
IModelApp Specializations
To support the various use cases and platforms for iTwin.js frontends, there are specialized "apps" that should be used where appropriate.
For a given frontend, you will pick one class from the following list, and call its
startupmethod. The type ofIModelAppshould match the type of IModelHost running on your backend.
- IModelApp: must always be initialized. For RPC, connects to previously-initialized
IModelHost(s) through routing.- IpcApp: for frontends with a dedicated IpcHost backend. IpcApp.startup calls IModelApp.startup.
IpcAppis abstract and should not be used directly.WebEditApp: for the frontend of web editing apps connected to aWebEditHostbackend.WebEditApp.startupcalls IpcApp.startup and must supply the user's credentials.ElectronApp: for the frontend of desktop apps running on Windows, Mac, or Linux connected to anElectronHostbackend.ElectronApp.startupcalls IpcApp.startup.MobileApp: for the frontend of mobile apps.MobileApp.startupcalls IpcApp.startup.MobileAppis abstract and should not be used directly.IOSApp: for the frontend of iOS apps.IOSApp.startupcallsMobileApp.startup.AndroidApp: for the frontend of Android apps.AndroidApp.startupcallsMobileApp.startup.
- IpcApp: for frontends with a dedicated IpcHost backend. IpcApp.startup calls IModelApp.startup.
Applications may customize the behavior of the IModelApp services by providing IModelAppOptions.
Last Updated: 07 January, 2022