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
startup
method. The type ofIModelApp
should 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.
IpcApp
is abstract and should not be used directly.WebEditApp
: for the frontend of web editing apps connected to aWebEditHost
backend.WebEditApp.startup
calls IpcApp.startup and must supply the user's credentials.ElectronApp
: for the frontend of desktop apps running on Windows, Mac, or Linux connected to anElectronHost
backend.ElectronApp.startup
calls IpcApp.startup.MobileApp
: for the frontend of mobile apps.MobileApp.startup
calls IpcApp.startup.MobileApp
is abstract and should not be used directly.IOSApp
: for the frontend of iOS apps.IOSApp.startup
callsMobileApp.startup
.AndroidApp
: for the frontend of Android apps.AndroidApp.startup
callsMobileApp.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