Passer au contenu

Getting Started

Ce contenu n'est pas encore disponible dans votre langue.

  1. Install core packages

    Terminal window
    npm install @capacitor-plus/core @capacitor-plus/cli
  2. Add platform packages

    Terminal window
    npm install @capacitor-plus/android # for Android
    npm install @capacitor-plus/ios # for iOS
  3. Initialize Capacitor

    FenΓͺtre de terminal
    npx cap init
  4. Add platforms

    FenΓͺtre de terminal
    npx cap add android
    FenΓͺtre de terminal
    npx cap add ios

If you have an existing Capacitor project, migrating to Capacitor+ is simple:

  1. Remove official packages

    Terminal window
    npm uninstall @capacitor/core @capacitor/cli @capacitor/android @capacitor/ios
  2. Install Capacitor+ packages

    Terminal window
    npm install @capacitor-plus/core @capacitor-plus/cli
    npm install @capacitor-plus/android # if using Android
    npm install @capacitor-plus/ios # if using iOS
  3. Sync your project

    FenΓͺtre de terminal
    npx cap sync

Since Capacitor+ is API-compatible, your existing code works without changes:

import { Capacitor } from '@capacitor/core';
import { registerPlugin } from '@capacitor/core';
// Check platform
const platform = Capacitor.getPlatform();
console.log('Running on:', platform);
// Check if native
if (Capacitor.isNativePlatform()) {
console.log('Running on native platform');
}
// Register a custom plugin
const MyPlugin = registerPlugin('MyPlugin');

All official Capacitor plugins work seamlessly:

import { Camera, CameraResultType } from '@capacitor/camera';
import { Geolocation } from '@capacitor/geolocation';
import { Storage } from '@capacitor/preferences';
// Camera
const photo = await Camera.getPhoto({
quality: 90,
resultType: CameraResultType.Uri
});
// Geolocation
const position = await Geolocation.getCurrentPosition();
// Storage
await Storage.set({ key: 'name', value: 'John' });

Capgo plugins work perfectly with Capacitor+:

import { CapacitorUpdater } from '@capgo/capacitor-updater';
import { ScreenOrientation } from '@capgo/capacitor-screen-orientation';
import { CapacitorFlash } from '@capgo/capacitor-flash';
// Live updates
await CapacitorUpdater.notifyAppReady();
// Screen orientation
await ScreenOrientation.lock({ orientation: 'portrait' });
// Flashlight
await CapacitorFlash.toggle();
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ionic-team/ β”‚ β”‚ CI/CD β”‚ β”‚ Claude Code β”‚ β”‚ npm publish β”‚
β”‚ capacitor │────▢│ Pipeline │────▢│ Security Review │────▢│ @capacitor-plusβ”‚
β”‚ (upstream) β”‚ β”‚ (daily sync) β”‚ β”‚ (AI analysis) β”‚ β”‚ packages β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  1. Daily Sync: GitHub Actions fetch latest changes from ionic-team/capacitor
  2. PR Creation: Changes are proposed as pull requests to the plus branch
  3. CI Validation: Full test suite runs (lint, unit tests, iOS build, Android build)
  4. Security Review: AI-powered analysis checks for vulnerabilities and breaking changes
  5. Auto-Merge: Only if CI passes AND security review approves
  6. Auto-Publish: New version published to npm under @capacitor-plus/*

Every upstream sync is analyzed for:

CheckWhat It Catches
SecurityCommand injection, XSS, path traversal, hardcoded secrets
Breaking ChangesRemoved/renamed APIs, changed signatures, config changes
StabilityNull dereferences, unhandled exceptions, race conditions, memory leaks
Data SafetyData loss scenarios, privacy violations, insecure storage
Code IntegrityObfuscated code, suspicious network calls, backdoors

Have a PR stuck in the official Capacitor repo? Get it merged in Capacitor+:

  1. Open an issue in the Capacitor+ repo linking to your upstream PR

  2. Or submit directly as a PR to the plus branch

  3. The team will review, run CI, and merge if it passes

This way you and others can benefit from your work immediately without waiting for the upstream release cycle.

Yes. Capacitor+ is used in production apps. Every release passes the same test suite as official Capacitor, plus additional security analysis.

Yes. All @capacitor/* plugins work with Capacitor+ out of the box.

The AI security review flags breaking changes for manual review. You’ll see the changes documented before they’re merged.

File issues on the Capacitor+ GitHub repo. For issues that also affect official Capacitor, we’ll help coordinate upstream.

Absolutely! PRs are welcome. You can submit fixes directly or request that specific upstream PRs be merged.