Guía
Cómo usar Capacitor+ Core en Capacitor
Usando paquetes Capacitor+ (@capacitor-plus)
Capacitor+ es un fork automatizado y siempre sincronizado de Capacitor mantenido por Capgo. Ofrece un reemplazo directo para los paquetes oficiales de Capacitor con una ventaja clave: los PR y fixes de la comunidad se integran más rápido.
Por qué existe Capacitor+
El equipo de Ionic mantiene Capacitor según sus propias prioridades y calendario de lanzamientos. Esto significa que las contribuciones de la comunidad —fixes, mejoras y nuevas funciones— pueden tardar meses o incluso años en integrarse. Algunas nunca llegan.
Capacitor+ resuelve este problema mediante:
- Integración de PRs de forks - Se integran activamente los PRs valiosos que están retenidos en la cola de upstream
- Sincronización continua - Cada cambio de Capacitor upstream se descarga, prueba y verifica automáticamente
- Lanzamientos rápidos - Cuando los cambios pasan el CI, se publican automáticamente en npm bajo el
@capacitor-plusalcance - Community-First - Tus contribuciones importan y se priorizan
- Revisión de seguridad - La IA analiza cada cambio en busca de vulnerabilidades, breaking changes y riesgos de estabilidad
Paquetes disponibles
| Paquete | Descripción |
|---|---|
@capacitor-plus/core |
Librería de runtime core |
@capacitor-plus/cli |
Interfaz de línea de comandos |
@capacitor-plus/android |
Runtime de Android |
@capacitor-plus/ios |
Runtime de iOS |
Instalación
Nuevo proyecto
Para un proyecto nuevo, simplemente usa los paquetes Capacitor+ 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 inicializa tu proyecto:
npx cap init
npx cap add android
npx cap add ios
Migración desde el Capacitor oficial
Para migrar un proyecto existente del Capacitor oficial 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
Como Capacitor+ es un reemplazo directo con la misma API, no se requieren cambios en code. Tus imports no cambian:
// 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 │
└─────────────────────┘ └──────────────────┘ └──────────────────┘ └─────────────────┘
- Daily Sync: Una acción de GitHub obtiene los últimos cambios de
ionic-team/capacitor - Creación de PR: Los cambios se proponen como pull requests al
plusrama - Validación de CI: Se ejecuta la suite completa de tests (lint, unit tests, iOS build, Android build)
- Revisión de Claude Code: El análisis de seguridad con IA verifica:
- Vulnerabilidades de seguridad (inyección, XSS, etc.)
- Cambios que rompan API
- Riesgos de crash y problemas de estabilidad
- Integridad de datos y privacidad
- Patrones maliciosos en code
- Auto-Merge: Solo si el CI pasa Y Claude aprueba (sin problemas detectados)
- Auto-publicar: Se publica una nueva versión en npm bajo
@capacitor-plus/*
Revisión de seguridad
Cada sincronización upstream se analiza para detectar:
| Verificar | Descripción |
|---|---|
| Seguridad | Inyección de comandos, XSS, path traversal, secretos hardcodeados, etc. |
| Cambios importantes | APIs eliminadas o renombradas, firmas modificadas, cambios en el formato de config |
| Estabilidad | Desreferencias de null, excepciones no controladas, race conditions, memory leaks |
| Seguridad de datos | Pérdida de datos, violaciones de privacidad, almacenamiento inseguro |
| Integridad de Code | code ofuscado, llamadas de red sospechosas, backdoors |
Si se detecta algún problema, el PR se marcará para revisión manual y NO se fusionará automáticamente.
¿Quieres que fusionen tu PR?
¿Tienes un PR estancado en el repo oficial de Capacitor? Así es como puedes llevarlo a Capacitor+:
- Abrir un issue en la Repo Capacitor+ vinculando tu PR upstream
- O envía el PR directamente al
plusrama - El equipo lo revisará, ejecutará el CI y hará merge si pasa
Así, tú y los demás podréis beneficiaros de tu trabajo de inmediato, sin esperar al ciclo de release upstream.
Beneficios
- Desatasca PRs ahora: Se integran los fixes y las features de la comunidad que esperan upstream
- Mantente al día: Recibe fixes upstream en cuanto pasen el CI
- Seguridad ante todo: Cada cambio se revisa en busca de vulnerabilidades y riesgos de estabilidad
- Releases verificados: Solo se publican los cambios que pasan las pruebas de CI Y la revisión de seguridad con IA
- Reemplazo directo: El mismo API que Capacitor, solo con un scope de paquete distinto
- Tu opinión cuenta: Envía tus propios PRs o pide que se mergeen PRs concretos de upstream
Ejemplo: Usando Capacitor+ con Plugins
Todos los plugins oficiales de 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 de 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! Ya tienes una versión de Capacitor que se actualiza más rápido y con las mejoras de la comunidad integradas antes. Tus apps se beneficiarán de los bug fixes y las nuevas features sin esperar al ciclo de release oficial.
Continuar con Usando paquetes Capacitor+ (@capacitor-plus)
Si estás usando Usando paquetes Capacitor+ (@capacitor-plus) para planificar el trabajo con plugins nativos, conéctalo con Capacitor+ por los detalles de implementación en Capacitor+, Directorio de plugins de Capgo para el flujo de trabajo del producto en Capgo Plugin Directory, Plugins de Capacitor por Capgo para el detalle de implementación en los Plugins de Capacitor por Capgo, Añadir o actualizar plugins para el detalle de implementación en Agregar o actualizar plugins, y Alternativas a plugins de Ionic Enterprise para el flujo de trabajo del producto en Alternativas a plugins de Ionic Enterprise.