Guía
Tutoría sobre Capacitor+ Core
Usando Capacitor+ (@capacitor-plus) Paquetes
Capacitor+ es un fork automático y siempre sincronizado de Capacitor mantenido por Capgo. Ofrece una sustitución de código de reemplazo para los paquetes oficiales de Capacitor con una ventaja clave: se integran y se fijan las PRs y las correcciones de la comunidad más rápido.
Why Capacitor+ Sigue Existiendo
La equipe de Ionic mantiene Capacitor con sus propias prioridades y calendario de lanzamiento. Esto significa que las contribuciones de la comunidad - correcciones de errores, mejoras y características - pueden esperar meses o incluso años para ser fusionadas. Algunas nunca llegan a hacerlo.
Capacitor+ resuelve este problema de la siguiente manera:
- Unir PRs de Forks - Las PRs valiosas que están atascadas en la cola de upstream se fusionan activamente
- Sincronización Continua - Cada cambio de upstream Capacitor se extrae automáticamente, se prueba y se verifica
- Lanzamientos Rápidos - Cuando los cambios pasan por CI, se publican automáticamente en npm bajo el
@capacitor-plusámbito - Comunidad-Primero - Sus contribuciones importan y se priorizan
- Revisado por seguridad - Cada cambio es analizado por IA para vulnerabilidades de seguridad, cambios que rompen y riesgos de estabilidad
Paquetes Disponibles
| Paquete | Descripción |
|---|---|
@capacitor-plus/core |
Biblioteca de tiempo de ejecución central |
@capacitor-plus/cli |
Interfaz de línea de comandos |
@capacitor-plus/android |
Tiempo de ejecución de Android |
@capacitor-plus/ios |
Tiempo de ejecución de iOS |
Instalación
Nuevo Proyecto
Para un nuevo proyecto, simplemente utilice los Capacitor+ paquetes en lugar de los oficiales:
npm install @capacitor-plus/core @capacitor-plus/cli
npm install @capacitor-plus/android # for Android
npm install @capacitor-plus/ios # for iOS
Luego inicia tu proyecto:
npx cap init
npx cap add android
npx cap add ios
Migrando desde Oficial Capacitor
Para migrar un proyecto existente desde oficial Capacitor a 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
Dado que Capacitor+ es un reemplazo de bajo nivel con el mismo API, no se requieren cambios en code. Tus importaciones permanecen iguales:
// These imports work the same with Capacitor+
import { Capacitor } from '@capacitor/core';
import { registerPlugin } from '@capacitor/core';
¿Cómo Funciona
┌─────────────────────┐ ┌──────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ ionic-team/ │ │ CI/CD │ │ Claude Code │ │ npm publish │
│ capacitor │────▶│ Pipeline │────▶│ Security Review │────▶│ @capacitor-plus│
│ (upstream) │ │ (daily sync) │ │ (AI analysis) │ │ packages │
└─────────────────────┘ └──────────────────┘ └──────────────────┘ └─────────────────┘
- Sincronización Diaria: Una Acción de GitHub obtiene los últimos cambios desde
ionic-team/capacitor - Creación de PR: Los cambios se proponen como solicitudes de cambio a
plusrama - Validación de CI: Se ejecuta el conjunto de pruebas completo (lint, pruebas unitarias, compilación de iOS, compilación de Android)
- Revisión de Claude Code: Análisis de seguridad integral impulsado por inteligencia artificial que verifica:
- Vulnerabilidades de seguridad (inyección, XSS, etc.)
- Cambios que rompen API
- Riesgos de colapso y problemas de estabilidad
- Preocupaciones de integridad y privacidad de datos
- Patrones maliciosos de code
- Auto-Merge: Solo si CI pasa y Claude aprueba (sin problemas detectados)
- Auto-Publish: Una nueva versión se publica en npm bajo
@capacitor-plus/*
Revisión de Seguridad
Cada sincronización upstream se analiza por:
| Verificar | Descripción |
|---|---|
| Seguridad | Inyección de comandos, XSS, travesía de rutas, secretos fijos, etc. |
| Cambios importantes | APIs eliminadas/renombradas, cambios en firmas, cambios en el formato de configuración |
| Estabilidad | Referencias a null, excepciones no manejadas, condiciones de carrera, fugas de memoria |
| Seguridad de datos | Escenarios de pérdida de datos, violaciones de privacidad, almacenamiento inseguro |
| Code Integrity | Código obfuscado code, llamadas de red sospechosas, puertas traseras |
Si se detectan cualquier problema, el PR se marca para revisión manual y NO se fusionará automáticamente.
¿Quieres que se fusionen tus PR?
¿Tienes un PR atascado en el repositorio oficial Capacitor? Aquí te decimos cómo hacer que pase a Capacitor+:
- Abre una incidencia en el Capacitor+ repo vinculando a tu PR upstream
- O envía el PR directamente a la
plusrama - El equipo lo revisará, ejecutará CI y lo fusionará si pasa la prueba
De esta manera, tú y otros pueden beneficiarse de tu trabajo de inmediato, sin tener que esperar al ciclo de liberación upstream.
Beneficios
- PRs Bloqueados AhoraMantén Actualizado
- : Se fusionan las correcciones y características de la comunidad que están esperando upstreamMantén Actualizado
- : Recibe correcciones upstream tan pronto como pasan las pruebas de CISeguridad Primero
- : Cada cambio se revisa por vulnerabilidades y riesgos de estabilidadLanzamientos Verificados
- : Solo se publican cambios que pasan tanto las pruebas de CI como la revisión de seguridad por IASustitución de Inserción Directa: La misma API que Capacitor, pero con un ámbito de paquete diferente
- Tu voz importa: Envía tus propios PR o solicita PR específicos de upstream para que se fusionen
Ejemplo: Usando Capacitor+ con Plugins
Todas las plugins oficiales Capacitor funcionan sin problemas con 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();
Los plugins Capgo también funcionan perfectamente con 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' });
¡Eso es todo! Ahora tienes una versión actualizada más rápida de Capacitor con mejoras de la comunidad fusionadas más rápido. Tus aplicaciones se beneficiarán de correcciones de errores y características sin tener que esperar al ciclo de lanzamiento oficial.
Sigue adelante desde Usando Capacitor+ (@capacitor-plus) Paquetes
Si estás utilizando Usando Capacitor+ (@capacitor-plus) Paquetes para planificar el trabajo de plugins nativos, conecta con Capacitor+ para los detalles de implementación en Capacitor+, Directorio de Plugins Capgo para el flujo de trabajo del producto en Directorio de Plugins Capgo, Plugins de Capgo en Capacitor para el detalle de implementación en Plugins de Capgo en Capacitor, Agregar o Actualizar Plugins para el detalle de implementación en Agregar o Actualizar Plugins, y Alternativas de Plugins de Empresa Ionic para el flujo de trabajo del producto en Alternativas de Plugins de Empresa Ionic.