ガイド
Capacitor+ Coreのチュートリアル
Capacitor+ (@capacitor-plus) パッケージを使用する
Capacitor+は、コミュニティのPRをマージし、迅速なリリースを実現する自動化された、常に同期された Capacitor メンテナンス Capgo。公式のCapacitorパッケージの置き換えとして使用できます。ただし、1つの大きな利点があります。 コミュニティからのPRと修正がより速くマージされる.
Capacitor+の存在理由
IonicチームはCapacitorを独自の優先順位とリリーススケジュールでメンテナンスしています。これは、コミュニティからの貢献 - バグ修正、改善、機能 - が、数か月もしくは数年間待たされる場合があります。あるいは、全くマージされない場合もあります。
Capacitor+はこの問題を解決するために使用されます。
- フォークからのPRのマージ - 上流のキューに溜まっている価値のあるPRが積極的にマージされます。
- 連続的な同期 - 上流のCapacitorから毎回の変更が自動的に取得され、テストされ、検証されます。
- 迅速なリリース - npm への変更はCIで通過した場合、自動的に
@capacitor-plusscope - コミュニティファースト - ご協力いただいた内容は優先されます
- Security Reviewed - すべての変更はAIによってセキュリティ脆弱性、破壊的変更、安定性リスクを分析されます
利用可能なパッケージ
| パッケージ | 説明 |
|---|---|
@capacitor-plus/core |
コアランタイムライブラリ |
@capacitor-plus/cli |
コマンドラインインターフェイス |
@capacitor-plus/android |
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から__CAPGO_KEEP_1__+への移行
公式の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と同じAPIを持つドロップイン置き換えなので、codeの変更は必要ありません。インポートは同じままです:
// 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 アクションは最新の変更をGitHubから取得します
ionic-team/capacitor - PR 作成: __CAPGO_KEEP_0__の変更は、プルリクエストとして提案されます。
plusbranch - CI検証: 全テストスイートが実行されます (lint、ユニットテスト、iOSビルド、Androidビルド)
- クラウド Code レビュー: AIによって強化された包括的なセキュリティ分析が実行されます。
- セキュリティ脆弱性 (インジェクション、XSSなど)
- 破壊的な API 変更
- クラッシュリスクと安定性問題
- データの整合性とプライバシーに関する懸念
- 悪意のある code パターン
- Auto-Merge: CI が通過し、Claude が承認した場合 (問題なし)
- Auto-Publish: npm への新しいバージョンが
@capacitor-plus/*
Security Review
アップストリームの Sync は、以下の要素を分析します:
| Check | 説明 |
|---|---|
| セキュリティ | コマンドインジェクション、XSS、パス トラバーサル、ハードコードされたシークレットなど |
| Breaking Changes | 削除/名前変更された API、サインチャー変更、構成形式の変更 |
| 安定性 | Null ポインタ参照、未処理の例外、レース条件、メモリリーク |
| データセーフティ | __CAPGO_KEEP_0__ のデータ整合性 |
| Code Integrity | code の問題が検出された場合、PR は手動レビュー用にフラグ付けされ、自動マージされません。 |
PR をマージしたい?
__CAPGO_KEEP_0__ の公式リポジトリに PR が詰まっている場合、どうしたらいいですか?
Have a PR stuck in the official Capacitor repo? Here's how to get it into Capacitor+:
- __CAPGO_KEEP_0__+ リポジトリで __CAPGO_KEEP_1__+: Capacitor+ repo PR をマージしたい?
- Or submit the PR directly を
plusブランチ - チームはそれをレビューし、CIを実行し、パスした場合にマージします。
この方法で、すぐにアップストリームのリリースサイクルを待たずに、自分の作業から他のユーザーがすぐに利益を得ることができます。
利点
- Stuck PRs Now: アップストリームで待っているコミュニティの修正と機能がマージされます。
- 最新の状態を維持する: アップストリームの修正がCIを通過したときにすぐに取得できます。
- セキュリティが第一: すべての変更は脆弱性や安定性のリスクを検証します。
- Verified Releases: Only changes that pass both CI tests AND AI security review are published
- Drop-in Replacement: Same API as Capacitor, just a different package scope
- Your Voice Matters: Submit your own PRs or request specific upstream PRs to be merged
Example: Using Capacitor+ with Plugins
All official Capacitor plugins work seamlessly with 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 plugins also work perfectly with 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' });
That's it! You now have a faster-updated version of Capacitor with community improvements merged faster. Your apps will benefit from bug fixes and features without waiting for the official release cycle.
Keep going from Using Capacitor+ (@capacitor-plus) Packages
If you are using 使用 Capacitor+ (@capacitor-plus) パッケージ ネイティブ プラグインの作業を計画するには、__CAPGO_KEEP_0__+ を接続する Capacitor+ Capacitor+ の実装詳細 Capgo プラグイン ディレクトリ Capgo プラグイン ディレクトリの製品フロー Capacitor プラグイン (@Capgo) Capacitor プラグイン (@Capgo) の実装詳細 プラグインの追加または更新 プラグインの追加または更新の実装詳細 イオニック エンタープライズ プラグインの代替 イオニック エンタープライズ プラグインの代替の製品フロー