See how Capacitor fits into the entire Ionic Ecosystem ->
Capacitor is part of the Ionic Ecosystem ->

Cordova Plugins and Ionic Native

When developing an app that uses Capacitor, it’s possible to use both Cordova and Ionic Native plugins.

Installing Cordova Plugins

Capacitor plugins are installed using your regular package manager and then synced to the native project(s). The installation process is the same for Cordova plugins in Capacitor.

Install the plugin, sync, and then finish any required native project configuration (see Variables and Hooks):

npm install cordova-plugin-name
npx cap sync

If the Cordova plugin has an Ionic Native wrapper, you can also install it for TypeScript support:

npm install @ionic-native/plugin-name

Updating Cordova Plugins

Use your regular package manager to update plugins. Then, sync the updated plugin to the native project(s):

npm install cordova-plugin-name@version
npx cap sync

Determining Installed Plugin Version

See the list of Capacitor and Cordova plugins (and their exact version numbers) installed in your project with:

npx cap ls

Compatibility Issues

There may be compatibility issues with Capacitor and some Cordova plugins. Many of the official Cordova plugins should not be used, as Capacitor offers official alternatives. Cordova plugins that use variables and hooks may be partially compatible. Some Cordova plugins are completely incompatible (see this list).

If you find an issue with an existing Cordova plugin, please let us know by providing the issue’s details and plugin information.

Variables and Hooks

Capacitor does not support Cordova install variables, auto configuration, or hooks, due to our philosophy of letting you control your native project source code (meaning things like hooks are unnecessary). If your plugin requires variables or settings to be set, you’ll need to apply those configuration settings manually by mapping between the plugin’s plugin.xml and required settings on iOS and Android.

Consult the iOS and Android configuration guides for info on how to configure each platform.

Known Incompatible Plugins

If a plugin is known to conflict or cause build issues, it will be skipped when running npx cap sync.

Here is a list of known incompatible plugins:

<- Community Plugins
Enterprise Plugins ->
Contribute ->