With leaner apps and shorter start times, Ionics App-Runtime Capacitor 3 promises one thing above all: more performance for web-native apps. For the newly presented version, the Ionic development team focused on multi-platform applications and revised its runtime environment in several places.
App developers should primarily notice this in noticeably smaller bundles. For this purpose, Ionic has outsourced the plug-ins previously contained in the runtime, for example for access to native features such as push notifications or platform-specific file systems, to its own repository. So where the corresponding code is not required, it is no longer included in the packaged app. As a side effect, apps created with Capacitor 3 on iOS and Android should only ask for user authorizations, for example for access to the camera, in a more comprehensible way than in the previous versions, if these functions are implemented at all.
Depending on the platform, plug-ins will also be added via lazy loading in the future. Capacitor automatically selects the right code: For electron apps, only electron plug-ins are loaded and not those for iOS or Android. In addition to reducing the file size of the apps, Ionic primarily wants to ensure that platform-specific code is not accidentally executed on the wrong platform.
More fun with the command line
In order for web and mobile developers to enjoy Capacitor more, the Ionic team has also revised the toolset of the runtime environment. A new [code]run[code]-Command should accelerate build and deployment and use fewer resources, since native IDEs no longer have to be active in parallel. In addition, developers will be able to write their capacitor configuration files type-safe in TypeScript in the future, including support for auto-completion and inline documentation.
Last but not least, mobile developers now have even more options for querying user permissions. Previously, requests were only issued when the camera was accessed for the first time – for example, authorization to access the camera was only requested if it was to be activated in the app for the first time. With the new authorization API in Capacitor 3, developers can freely decide until the first use when they ask their users for authorizations, for example immediately after starting the app for the first time.
Those who deal primarily with native platforms will in future have the option of integrating Capacitor as a web view into apps. A few days ago Ionic announced its new companion product Portals, which is available as an alpha version to interested developers via a waiting list.
Capacitor 3 is the runtime environment the Ionic platform. Compared to classic hybrid applications, it allows the development of web-native applications as progressive web apps – with interfaces to native functions of the iOS and Android platform on a common code base. The Runtime is open source available under the MIT license and supports common frameworks such as React, Svelte and Vue.