メインコンテンツへスキップ
@capacitor-plus/core 開発者ツール オープンソース

Capacitor + Core Capacitor プラグイン

Capacitor は、コミュニティの PR をマージして素早くリリースする、常に自動同期される Capacitor のフォークです

インストール

bun add @capacitor-plus/core bunx cap sync
npm、pnpm、または yarn
  • npm install @capacitor-plus/core
  • pnpm add @capacitor-plus/core
  • yarn add @capacitor-plus/core

ガイド

Capacitor で Capacitor+ Core を使う方法

Capacitor+ (@capacitor-plus) パッケージの使用

Capacitor+ は、常に同期される自動化されたフォークです: Capacitor によるメンテナンス Capgo. 公式の Capacitor パッケージのドロップインリプレイスメントとして機能しますが、大きな利点が1つあります: コミュニティによるPRや修正がより迅速にマージされること.

Capacitor+ が存在する理由

Ionicチームは独自の優先順位とリリーススケジュールに基づいて Capacitor をメンテナンスしています。そのため、バグ修正や改善、新機能といったコミュニティからの貢献がマージされるまで、数ヶ月から数年かかることもあります。中には、結局マージされないものさえあります。

Capacitor+ は、以下の方法でこの問題を解決します:

  1. フォークからのPRをマージ - アップストリームのキューで停滞している価値のあるPRを積極的にマージします
  2. 継続的な同期 - アップストリームの Capacitor からのすべての変更を自動的にプルし、テストおよび検証します
  3. 迅速なリリース - CIを通過した変更は、自動的に npm へ公開されます @capacitor-plus スコープ
  4. コミュニティファースト - あなたの貢献は重視され、優先されます
  5. セキュリティレビュー済み - すべての変更を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 からの移行

既存のプロジェクトを公式の 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 が同じドロップインリプレイスメントであるため、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       │
└─────────────────────┘     └──────────────────┘     └──────────────────┘     └─────────────────┘
  1. デイリー同期: GitHub Action が最新の変更を取得します ionic-team/capacitor
  2. PRの作成: 変更内容はプルリクエストとして〜へ提案されます plus ブランチ
  3. CI検証: フルテストスイートを実行 (lint, ユニットテスト, iOSビルド, Androidビルド)
  4. ClaudeによるCodeレビュー: AIによる包括的なセキュリティ分析で以下をチェック:
    • セキュリティ脆弱性 (インジェクション, XSSなど)
    • 破壊的なAPI変更
    • クラッシュのリスクと安定性の問題
    • データの整合性とプライバシーに関する懸念
    • 悪意のあるcodeパターン
  5. 自動マージ: CIに合格し、かつClaudeが承認した場合のみ (問題なし)
  6. 自動公開: npm に新しいバージョンが公開されました。バージョン: @capacitor-plus/*

セキュリティレビュー

アップストリーム同期ごとに以下を分析します:

確認 説明
セキュリティ コマンドインジェクション、XSS、パストラバーサル、ハードコードされたシークレットなど
破壊的変更 削除・名称変更されたAPI、シグネチャの変更、設定フォーマットの変更
安定性 Null参照、未処理の例外、レースコンディション、メモリリーク
データの安全性 データの紛失、プライバシー侵害、不適切なストレージ管理
Code の整合性 難読化された code、不審なネットワーク通信、バックドア

問題が検出された場合、PRにはフラグが立てられ、手動レビューが必要になります。自動マージは行われません。

PRをマージしてほしいですか?

公式の Capacitor リポジトリでPRが止まっていませんか? Capacitor+ へ取り込む方法は以下の通りです:

  1. Issueを作成する の Capacitor+ リポジトリ アップストリームのPRへのリンクを貼る
  2. または、直接PRを提出する への plus ブランチ
  3. チームがレビューとCIを実行し、合格すればマージします

これにより、あなたも他の開発者も、アップストリームのリリースサイクルを待たずに成果をすぐに活用できます。

メリット

  • 保留中のPRを今すぐ取得: アップストリームで待機中のコミュニティによる修正や機能がマージされます
  • 常に最新の状態を保つ: CIを通過したアップストリームの修正を即座に取得できます
  • セキュリティを最優先: すべての変更に対して脆弱性と安定性のリスクをレビューします
  • 検証済みのリリース: CIテストとAIセキュリティレビューの両方に合格した変更のみが公開されます
  • そのまま置き換え可能: Capacitor と同じ API で、パッケージスコープが違うだけです
  • あなたの声をお聞かせください: 自分で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) パッケージの使用」から続ける

使用している場合 Capacitor+ (@capacitor-plus) パッケージの使用 ネイティブプラグインの作業を計画するには、次と連携してください: Capacitor+ Capacitor+ の実装詳細については、 Capgo プラグインディレクトリ Capgo プラグインディレクトリのプロダクトワークフローについては、 Capgo による Capacitor プラグイン Capgo による Capacitor プラグインの実装詳細については、 プラグインの追加または更新 プラグインの追加または更新における実装詳細については、および Ionic Enterprise プラグインの代替案 Ionic Enterprise プラグインの代替案におけるプロダクトワークフローについては。

よくある質問

Capacitor+ Core プラグイン FAQ

Capacitor アプリに Capacitor+ Core プラグインをインストールするにはどうすればよいですか?

"bun add @capacitor-plus/core"(または "npm install @capacitor-plus/core")を実行し、続けて "bunx cap sync" を実行すると、iOS と Android のプロジェクトにネイティブの code が反映されます。アプリの code で "@capacitor-plus/core" からインポートします。

@capacitor-plus/core は React、Vue、Angular で動作しますか?

はい。Capacitor+ Core は Capacitor パッケージなので、Ionic、React、Vue、Angular、Svelte、素の JavaScript など、Capacitor 上で動くあらゆる Web フレームワークで使えます。

@capacitor-plus/core はどの Capacitor バージョンをサポートしていますか?

Capgo プラグインは Capacitor のメジャーバージョンに合わせています。使用している Capacitor のメジャーバージョンに一致するプラグインのメジャーバージョンを使ってください (例: Capacitor 8 ならプラグイン v8)。GitHub の README にある互換性テーブルに、メンテナンス中のバージョンが記載されています。

@capacitor-plus/core は無料でオープンソースですか?

はい。code のソースコードは GitHub の https://github.com/Cap-go/capacitor-plus/ で公開されており、パッケージは npm から無料でインストールできます。バグ報告やプルリクエストも歓迎です。

App Store の審査なしで、Capacitor+ Core を使っている code をアップデートできますか?

プラグインのインストールやアップグレードはネイティブの code を変更するため、新しいストアビルドが必要です。その後は、プラグインを呼び出す JavaScript、HTML、CSS の変更を Capgo Live Updates で即座に配信できます。

アプリの審査を待たずに Capacitor+ Core の変更をリリース

プラグインをストア用ビルドに組み込めば、Capgo live updates で JavaScript、HTML、CSS の変更を数分でユーザーに配信できます

Capgo から始める