Framework guides

Capacitor Plugins

Lunadeck supports all official Capacitor plugins and most community plugins out of the box.

Official plugins

All @capacitor/* plugins are pre-configured in the build environment:

PluginPackageStatus
Camera@capacitor/cameraSupported
Filesystem@capacitor/filesystemSupported
Geolocation@capacitor/geolocationSupported
Push Notifications@capacitor/push-notificationsSupported
Local Notifications@capacitor/local-notificationsSupported
Haptics@capacitor/hapticsSupported
Keyboard@capacitor/keyboardSupported
Status Bar@capacitor/status-barSupported
Splash Screen@capacitor/splash-screenSupported
App@capacitor/appSupported
Network@capacitor/networkSupported
Storage@capacitor/preferencesSupported

Community plugins

Community plugins are supported as long as they:

  1. Have a valid Android implementation (android/ directory in the plugin package)
  2. Are compatible with the Capacitor version you're using
  3. Don't require proprietary SDKs that aren't publicly available

Plugin configuration

Some plugins require additional configuration in capacitor.config.ts:

const config: CapacitorConfig = {
  plugins: {
    PushNotifications: {
      presentationOptions: ["badge", "sound", "alert"],
    },
    SplashScreen: {
      launchAutoHide: true,
      androidScaleType: "CENTER_CROP",
    },
  },
};

Troubleshooting plugins

  • Build fails after adding a plugin — Run npx cap sync android locally to verify the plugin installs correctly
  • Plugin not found at runtime — Ensure the plugin is registered in MainActivity.java or auto-linked
  • Gradle conflicts — Check for duplicate or incompatible dependencies in the plugin's build.gradle