Passer au contenu

Commencer

  1. Installer les packages de base

    Terminal window
    npm install @capacitor-plus/core @capacitor-plus/cli
  2. Ajouter des packages de plateforme

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

    Fenêtre de terminal
    npx cap init
  4. Ajouter des plateformes

    Fenêtre de terminal
    npx cap add android
    Fenêtre de terminal
    npx cap add ios

Si vous avez un projet Capacitor existant, la migration vers Capacitor+ est simple :

  1. Supprimer les packages officiels

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

    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. Synchronisez votre projet

    Fenêtre de terminal
    npx cap sync

Puisque Capacitor+ est compatible avec API, votre code existant fonctionne sans modification :

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');

Tous les plugins officiels Capacitor fonctionnent de manière transparente :

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' });

Les plugins Capgo fonctionnent parfaitement avec 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. Synchronisation quotidienne : GitHub Les actions récupèrent les dernières modifications de ionic-team/capacitor
  2. Création PR : Les modifications sont proposées sous forme de pull request à la branche plus
  3. Validation CI : exécutions d’une suite de tests complète (lint, tests unitaires, build iOS, build Android)
  4. Examen de sécurité : une analyse basée sur l’IA vérifie les vulnérabilités et les modifications importantes
  5. Fusion automatique : uniquement si CI réussit ET que l’examen de sécurité est approuvé
  6. Publication automatique : nouvelle version publiée sur npm sous @capacitor-plus/*

Chaque synchronisation en amont est analysée pour :

VérifierCe qu’il attrape
SécuritéInjection de commandes, XSS, parcours de chemin, secrets codés en dur
Modifications récentesAPI supprimées/renommées, signatures modifiées, modifications de configuration
StabilitéDéréférencements nuls, exceptions non gérées, conditions de concurrence critique, fuites de mémoire
Sécurité des donnéesScénarios de perte de données, violations de la vie privée, stockage non sécurisé
Intégrité du codeCode masqué, appels réseau suspects, portes dérobées

Vous avez un PR bloqué dans le dépôt officiel Capacitor ? Fusionnez-le dans Capacitor+ :

  1. Ouvrez un problème dans le Capacitor+ repo lié à votre PR en amont

  2. Ou soumettez directement en tant que PR à la succursale plus

  3. L’équipe examinera, exécutera CI et fusionnera si elle réussit

De cette façon, vous et d’autres pouvez bénéficier immédiatement de votre travail sans attendre le cycle de publication en amont.

##FAQ

Oui. Capacitor+ est utilisé dans les applications de production. Chaque version passe la même suite de tests que le Capacitor officiel, ainsi qu’une analyse de sécurité supplémentaire.

Mes plugins officiels fonctionneront-ils toujours ?Oui. Tous les plugins @capacitor/* fonctionnent avec Capacitor+ prêt à l’emploi.

Section titled “Mes plugins officiels fonctionneront-ils toujours ?Oui. Tous les plugins @capacitor/* fonctionnent avec Capacitor+ prêt à l’emploi.”

Que se passe-t-il si l’amont publie une modification radicale ?

Section titled “Que se passe-t-il si l’amont publie une modification radicale ?”

L’examen de la sécurité de l’IA signale les modifications importantes pour un examen manuel. Vous verrez les modifications documentées avant leur fusion.

Problèmes de fichiers sur le Capacitor+ GitHub repo. Pour les problèmes qui affectent également le Capacitor officiel, nous vous aiderons à nous coordonner en amont.

Absolument! Les PR sont les bienvenus. Vous pouvez soumettre des correctifs directement ou demander que des PR en amont spécifiques soient fusionnés.