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.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 iOS and Android apps.MobileApp.startupcalls IpcApp.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: 11 June, 2025
Found something wrong, missing, or unclear on this page? Raise an issue in our repo.