안내
Capacitor+ 코어 튜토리얼
Capacitor+ (@capacitor-plus) 패키지 사용
Capacitor+는 항상 동기화된 자동화된 Capacitor의 분기입니다. Capacitor 관리 Capgo. Capacitor의 공식 패키지 대체용으로 사용할 수 있습니다. Capacitor+의 주요 장점은 다음과 같습니다. __CAPGO_KEEP_0__+의 주요 장점은 커뮤니티 PR 및 수정이 더 빠르게 병합되는 것입니다..
Why Capacitor+ Exists
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+ solves this problem by:
- 포크에서 PR 병합 - 업스트림 큐에 갇힌 유용한 PR들이 적극적으로 병합됩니다.
- 연속 동기화 - Every change from upstream Capacitor is automatically pulled, tested, and verified
- 빠른 릴리즈 - When changes pass CI, they're automatically published to npm under the
@capacitor-plus범위 - 커뮤니티-최우선 당신의 기여는 중요하고 우선순위를 받습니다.
- 보안 검토 - 모든 변경 사항은 AI에 의해 보안 취약점, 변경 사항, 안정성 위험을 분석합니다.
사용 가능한 패키지
| 패키지 | 설명 |
|---|---|
@capacitor-plus/core |
코어 런타임 라이브러리 |
@capacitor-plus/cli |
명령 줄 인터페이스 |
@capacitor-plus/android |
안드로이드 런타임 |
@capacitor-plus/ios |
iOS 런타임 |
설치
새 프로젝트
새 프로젝트를 위해, 간단히 Capacitor+ 패키지를 공식 패키지 대신 사용하세요:
npm install @capacitor-plus/core @capacitor-plus/cli
npm install @capacitor-plus/android # for Android
npm install @capacitor-plus/ios # for iOS
그런 다음 프로젝트를 초기화하세요:
npx cap init
npx cap add android
npx cap add ios
공식 Capacitor에서 마이그레이션
공식 Capacitor에서 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
Capacitor+는 API와 동일한 drop-in 대체품이므로 code 변경이 필요하지 않습니다. import 문은 동일합니다:
// These imports work the same with Capacitor+
import { Capacitor } from '@capacitor/core';
import { registerPlugin } from '@capacitor/core';
이것은 어떻게 작동하는가
┌─────────────────────┐ ┌──────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ ionic-team/ │ │ CI/CD │ │ Claude Code │ │ npm publish │
│ capacitor │────▶│ Pipeline │────▶│ Security Review │────▶│ @capacitor-plus│
│ (upstream) │ │ (daily sync) │ │ (AI analysis) │ │ packages │
└─────────────────────┘ └──────────────────┘ └──────────────────┘ └─────────────────┘
- 일일 동기화: GitHub 액션은 최신 변경 사항을 가져옵니다
ionic-team/capacitor - PR 생성: 변경 사항은 pull request로 제안됩니다
plusbranch - CI 검증: 전체 테스트 스위트가 실행됩니다 (lint, 단위 테스트, iOS 빌드, Android 빌드)
- 클로드 Code 리뷰: AI가 지원하는 전반적인 보안 분석을 위해
- 보안 취약점 (인젝션, XSS 등)
- API 변경 사항을 깨트리는
- 스태빌리티 이슈 및 충돌 위험
- 데이터 무결성 및 개인 정보 보호 문제
- code 악성 패턴
- 자동 병합: CI가 통과하고 클로드가 승인 (문제가 감지되지 않음)
- 자동 배포: 새로운 버전이 npm 에서
@capacitor-plus/*
__CAPGO_KEEP_0__ 보안 검토
업스트림 동기화는 다음과 같은 항목을 분석합니다:
| 확인 | 설명 |
|---|---|
| 보안 | 명령어 삽입, XSS, 경로 탐색, 고정 비밀, 등 |
| 변경 사항 | 제거/이름 변경된 API, 서명 변경, 구성 형식 변경 |
| 안정성 | Null 참조, 예외 처리, 경쟁 조건, 메모리 누수 |
| 데이터 안전 | 데이터 손실 시나리오, 개인 정보 침해, 안전하지 않은 저장 |
| Code完整성 | 가려진 code, 수상한 네트워크 호출, 백도어 |
문제가 발견되면 PR은 수동 검토를 위해 표시되고 자동 병합되지 않습니다.
PR이 병합되기를 원합니까?
Capacitor 공식 저장소에 PR이 걸리게 되면 어떻게 해야 하나요? Capacitor+로 어떻게 넣을 수 있나요?
- 이슈를 열어보세요 in the Capacitor+ 저장소 업스트림 PR에 대한 링크를 포함하세요
- 직접 __CAPGO_KEEP_1__+ branch로 PR을 제출하세요 team
plusbranch - 팀이 검토를 하며 CI를 실행하고 통과하면 병합합니다.
이렇게 하면, 당신과 다른 사람들은 업스트림 릴리즈 사이클을 기다리지 않고 즉시 당신의 작업의 이점을 누릴 수 있습니다.
장점
- 현재 PR: 업스트림에서 대기 중인 커뮤니티.fixes 및 기능이 병합됩니다.
- 최신화: 업스트림.fixes가 CI를 통과한 즉시 받습니다.
- 안전 우선: 모든 변경 사항은 취약점 및 안정성 위험을 검토합니다.
- 인증된 릴리즈: CI 테스트 및 AI 보안 검토를 통과한 변경 사항만 릴리즈됩니다.
- Drop-in Replacement: API과 Capacitor이 동일한 것과는 다르게 패키지 범위만 다릅니다.
- 당신의 목소리가 중요합니다.: 자신의 PR를 제출하거나 특정 업스트림 PR를 병합하도록 요청하세요.
예시: Capacitor+를 플러그인과 함께 사용하는 방법
Capacitor의 모든 공식 플러그인은 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();
Capgo 플러그인도 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' });
그의 그것! 이제 Capacitor에 커뮤니티 개선 사항이 더 빠르게 병합된 더 빠른 업데이트된 버전을 가지고 있습니다. 앱은 공식 릴리스 주기 기다리지 않고 버그 수정 및 기능을 즐길 수 있습니다.
다음 단계로 가기: Capacitor+ (@capacitor-plus) 패키지를 사용하는 방법
이미 __CAPGO_KEEP_0__+ (@__CAPGO_KEEP_1__-plus) 패키지를 사용하고 있다면 Capacitor+ (@capacitor-plus) 패키지를 사용하는 방법 자연 플러그인 작업을 계획하고 연결하려면 __CAPGO_KEEP_0__+를 사용하세요. Capacitor+ Capacitor+의 implementation detail Capgo Plugin Directory Capgo 제품 워크플로우에 대한 Capgo 플러그인 디렉토리 Capacitor Plugins by Capgo for the implementation detail in Capacitor Plugins by Capgo, 플러그인 추가 또는 업데이트 플러그인 추가 또는 업데이트에 대한 구현 세부 정보 아이오닉 엔터프라이즈 플러그인 대체 Capgo 제품 워크플로우에 대한 아이오닉 엔터프라이즈 플러그인 대체