Guide
Comment utiliser Capacitor+ Core dans Capacitor
Utiliser Capacitor+ (@capacitor-plus) Packages
Capacitor+ est une version automatisée et toujours synchronisée de Capacitor entretenu par Capgo Il fournit une substitution de remplacement pour les packages officiels Capacitor avec un avantage clé : Pourquoi __CAPGO_KEEP_0__+ existe.
L'équipe Ionic maintient Capacitor avec leurs propres priorités et calendrier de publication. Cela signifie que les contributions de la communauté - corrections de bogues, améliorations et fonctionnalités - peuvent attendre des mois ou même des années pour être fusionnées. Certains ne sont jamais intégrés du tout.
The Ionic team maintains Capacitor with their own priorities and release schedule. This means community contributions - bug fixes, improvements, and features - can wait months or even years to be merged. Some never make it at all.
Capacitor+ résout ce problème en :
- Fusionner les PRs des Forks - Les PRs précieuses bloqués dans la file d'attente de la branche principale sont activement fusionnés
- Syncronisation Continue Tout changement provenant de l'amont Capacitor est automatiquement récupéré, testé et vérifié.
- Mises à jour Rapides - Lorsque les modifications passent par CI, elles sont automatiquement publiées sur npm sous le
@capacitor-plusportée - Community-First vos contributions comptent et sont priorisées
- Vérifié en Matière de Sécurité Tout changement est analysé par l'IA pour les vulnérabilités de sécurité, les modifications de rupture et les risques de stabilité.
Packages Disponibles
| Package | Description |
|---|---|
@capacitor-plus/core |
Bibliothèque de runtime de base |
@capacitor-plus/cli |
Interface de ligne de commande |
@capacitor-plus/android |
Runtime Android |
@capacitor-plus/ios |
Runtime iOS |
Installation
Projet Nouveau
Pour un nouveau projet, utilisez simplement les packages Capacitor+ au lieu des versions officielles :
npm install @capacitor-plus/core @capacitor-plus/cli
npm install @capacitor-plus/android # for Android
npm install @capacitor-plus/ios # for iOS
Initialisez ensuite votre projet :
npx cap init
npx cap add android
npx cap add ios
Migrating from Official Capacitor
Migrer un projet existant depuis les versions officielles Capacitor vers Capacitor+ :
# Remove official packages
npm uninstall @capacitor/core @capacitor/cli @capacitor/android @capacitor/ios
# Install Capacitor+ packages
npm install @capacitor-plus/core @capacitor-plus/cli
npm install @capacitor-plus/android # if using Android
npm install @capacitor-plus/ios # if using iOS
Puisque Capacitor+ est un remplacement sans modification avec les mêmes API, aucune code modification n'est requise. Vos imports restent les mêmes :
// These imports work the same with Capacitor+
import { Capacitor } from '@capacitor/core';
import { registerPlugin } from '@capacitor/core';
Comment ça marche
┌─────────────────────┐ ┌──────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ ionic-team/ │ │ CI/CD │ │ Claude Code │ │ npm publish │
│ capacitor │────▶│ Pipeline │────▶│ Security Review │────▶│ @capacitor-plus│
│ (upstream) │ │ (daily sync) │ │ (AI analysis) │ │ packages │
└─────────────────────┘ └──────────────────┘ └──────────────────┘ └─────────────────┘
- Daily Sync: Une action GitHub récupère les dernières mises à jour
ionic-team/capacitor - Création de PR: Changes are proposed as pull requests to the
plusbranch - Validation CI: Exécution complète du jeu de tests (lint, tests unitaires, build iOS, build Android)
- Claude Revue de Code: Analyse de sécurité approchée par l'IA qui vérifie :
- Vulnérabilités de sécurité (injection, XSS, etc.)
- Changements API brisants
- Risques de plantage et problèmes de stabilité
- Data integrity and privacy concerns
- Modèles code malveillants
- Auto-Merge: Seul si CI passe ET Claude approuve (aucun problème détecté)
- Auto-Publish: Une nouvelle version est publiée sur npm sous
@capacitor-plus/*
Révision de sécurité
Chaque synchronisation en amont est analysée pour :
| Vérifier | Description |
|---|---|
| Sécurité | Injection de commandes, XSS, parcours de chemins, secrets fixés, etc. |
| Changements de rupture | APIs supprimées/renommées, signatures modifiées, changements de format de configuration |
| Stabilité | Références à null, exceptions non gérées, conditions de course, fuites de mémoire |
| Data Safety | Scénarios de perte de données, violations de confidentialité, stockage non sécurisé |
| Intégrité Code | Stockage code obscurci, appels réseau suspects, backdoors |
Si des problèmes sont détectés, le PR est signalé pour une revue manuelle et NE sera PAS fusionné automatiquement.
Voulez-vous que votre PR soit fusionné?
Avez-vous un PR bloqué dans le dépôt officiel Capacitor ? Voici comment le faire passer dans Capacitor+ :
- Ouvrez un problème dans le Capacitor+ dépôt en faisant référence à votre PR upstream
- Ou soumettez le PR directement à la
plusbranche - Le team la reviendra, exécutera la CI, et la fusionnera si elle passe
De cette façon, vous et les autres pouvez profiter de votre travail immédiatement, sans attendre le cycle de mise à jour upstream.
Avantages
- Obtenez les PR bloqués maintenant: Fixes et fonctionnalités de la communauté qui attendent upstream sont fusionnés
- Restez à jour: Obtenez les fixes upstream dès qu'ils passent la CI
- Premier de la sécurité: Chaque changement est revu pour les vulnérabilités et les risques de stabilité
- Sorties vérifiéesSeules les modifications qui passent à la fois les tests CI et la revue de sécurité AI sont publiées.
- Remplacement en un coup: Même API que Capacitor, mais avec un scope de package différent
- Votre Voix Compte: Soumettez vos propres PR ou demandez des PR upstream spécifiques pour être fusionnés
Exemple : Utilisation de Capacitor+ avec les Plugins
Tous les plugins officiels Capacitor fonctionnent sans heurt avec Capacitor+:
import { Capacitor } from '@capacitor/core';
import { Camera, CameraResultType } from '@capacitor/camera';
import { Geolocation } from '@capacitor/geolocation';
// Everything works exactly the same
const platform = Capacitor.getPlatform();
const photo = await Camera.getPhoto({
resultType: CameraResultType.Uri
});
const position = await Geolocation.getCurrentPosition();
Les plugins Capgo fonctionnent également parfaitement avec Capacitor+:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
import { ScreenOrientation } from '@capgo/capacitor-screen-orientation';
// Use Capgo plugins with Capacitor+
await CapacitorUpdater.notifyAppReady();
await ScreenOrientation.lock({ orientation: 'portrait' });
C'est tout ! Vous avez maintenant une version mise à jour plus rapide de Capacitor avec des améliorations communautaires fusionnées plus rapidement. Vos applications bénéficieront de correctifs de bogues et de fonctionnalités sans attendre le cycle de publication officiel.
Continuez de l'Utilisation de Capacitor+ (@capacitor-plus) Packages
Si vous utilisez Utilisation de Capacitor+ (@capacitor-plus) Packages pour planifier le travail de plugin natif, connectez-l’avec Capacitor+ pour les détails d'implémentation dans Capacitor+ Capgo Répertoire de Plugins pour le flux de travail du produit dans Capgo Répertoire de Plugins Capacitor Plugins par Capgo pour les détails d'implémentation dans Capacitor Plugins par Capgo Ajouter ou Mettre à Jour des Plugins pour les détails d'implémentation dans Ajouter ou Mettre à Jour des Plugins, et Alternatives de Plugins Entreprise Ionic pour le flux de travail du produit dans Alternatives de Plugins Entreprise Ionic.