Sauter au contenu

Accueil

  1. Installer les packages de base

    Fenêtre de terminal
    npm install @capacitor-plus/core @capacitor-plus/cli
  2. Ajouter les packages de plateforme

    Fenêtre de terminal
    npm install @capacitor-plus/android # for Android
    npm install @capacitor-plus/ios # for iOS
  3. Initialiser 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

    Fenêtre de terminal
    npm uninstall @capacitor/core @capacitor/cli @capacitor/android @capacitor/ios
  2. Installer les packages Capacitor+

    Fenêtre de terminal
    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. Synchroniser votre projet

    Fenêtre de terminal
    npx cap sync

Puisque Capacitor+ est compatible avec API-, vos code existants fonctionnent sans modifications :

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 fluide :

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 Actions récupèrent les dernières modifications ionic-team/capacitor
  2. Création de PR: Les modifications sont proposées sous forme de demandes de tirage vers le plus branchement
  3. Validation CI: Tout le jeu de tests est exécuté (lint, tests unitaires, build iOS, build Android)
  4. Révision de sécurité: L'analyse par intelligence artificielle vérifie les vulnérabilités et les changements brisants
  5. Mise à jour automatique: Seulement si la CI passe ET la revue de sécurité approuve
  6. Publier automatiquement: Nouvelle version publiée sur npm sous @capacitor-plus/*

Analyse de chaque synchronisation en amont pour :

VérifierCe qu'il attrape
SécuritéInjection de commandes, XSS, parcours de chemins, secrets fixés
Changements de ruptureFonctions API supprimées ou renommées, changements de signatures, modifications de la configuration
StabilitéRéférences à null, exceptions non gérées, conditions de course, fuites de mémoire
Sécurité des données__CAPGO_KEEP_0__ Intégrité
Intégrité obfusquée Code, appels réseau suspects, backdoorsObfuscated code, suspicious network calls, backdoors

Section intitulée « Soumettre votre PR »

Section intitulée « Soumettre votre PR »

Avez-vous un PR bloqué dans le référentiel officiel Capacitor ? Obtenez-le intégré dans Capacitor+:

  1. Ouvrir un problème dans le Capacitor+ référentiel en faisant référence à votre PR upstream

  2. Ou soumettre directement comme un PR dans la plus branch

  3. L'équipe passera en revue, exécutera la CI et intégrera si cela passe

De cette façon, vous et les autres pouvez bénéficier de votre travail immédiatement sans attendre le cycle de mise à jour upstream.

Oui. Capacitor+ est utilisé dans les applications de production. Chaque mise à jour passe le même ensemble de tests que le Capacitor officiel, plus une analyse de sécurité supplémentaire.

Mes plugins officiels fonctionneront-ils toujours?

Section intitulée “Mes plugins officiels fonctionneront-ils toujours?”

Oui. Tous les @capacitor/* plugins fonctionnent avec Capacitor+ sans modification.

Quoi si une mise à jour upstream introduit une modification de rupture?

Section intitulée “Quoi si une mise à jour upstream introduit une modification de rupture?”

La revue de sécurité par l'IA signale les modifications de rupture pour examen manuel. Vous verrez les modifications documentées avant qu'elles soient fusionnées.

Signalez des problèmes sur le Capacitor + GitHub repo. Pour les problèmes qui affectent également les versions officielles de Capacitor, nous coordonnerons l'envoi vers l'amont.

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

Si vous utilisez Getting Started pour planifier le travail de plugin natif, connectez-le avec Utilisez Capacitor+ (@capacitor-plus) Packages pour la capacité native en utilisant Capacitor+ (@capacitor-plus) Packages, Capgo Répertoire du plugin pour le flux de travail du produit dans Capgo Répertoire du plugin, Capacitor Plugins par Capgo pour le détail d'implémentation dans Capacitor Plugins par Capgo, Ajouter ou Mettre à jour les plugins pour le détail d'implémentation dans Ajouter ou Mettre à jour les plugins, et Alternatives de plugins d'entreprise Ionic pour le flux de travail du produit dans Alternatives de plugins d'entreprise Ionic.