ionic-angular について
IonicとAngularのアプリ開発を案内するリファレンススキルで、プロジェクト設定、ナビゲーション、画面、横断的な実装方針を扱います。トピック別のガイドに加え、構成やライブラリ、実装慣行の要件を示します。
主な機能
- 01セットアップ、構成、ルーティングのガイド
- 02画面とナビゲーションのリファレンス
- 03Signalsとサービスの実装ガイド
- 04アクセシビリティ、ローカライズ、遅延読み込み
- 05必須画面、ライブラリ、Angularの実装慣行
活用シーン
- 01新しいIonic Angularアプリの計画
- 02オンボーディング、ペイウォール、設定画面の実装
- 03ルーティングとタブナビゲーション方式の選択
- 04ビルド前のAngular規約の確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ erkamyaman/ ionic-capacitor-skills --skill ionic-angularインストール後、Claude Code で/ionic-angularを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/accessibility.mdapp-config.mdbest-practices.mdcommands.mdcontrol-flow.mddefer-loading.mdi18n-ngx-translate.mdnew-app.mdonboarding-guard.mdonboarding-page.mdpaywall-page.mdproject-structure.mdrouting.mdservices.mdsettings-page.mdsignals.mdtabs-navigation.md詳細
Ionic + Angular アプリのガイドライン
これは SKILL ファイルであり、プロジェクトではありません。 ここでは決して
npm installを実行しないでください。新しいプロジェクトを作成する場合は、プロジェクトのパスを尋ねるか、別のディレクトリ(例:~/Projects/<app>)にスキャフォールドしてください。
これらのリファレンスを参照するタイミング
プロジェクトのセットアップ:
- 新しい Angular Ionic プロジェクトの作成:new-app.md
- プロジェクト構造(フォルダー構成):project-structure.md
- アプリの設定(
main.ts、app.config.ts):app-config.md - ルーティング(遅延
loadComponent、タブ):routing.md
ページとナビゲーション:
- オンボーディングガード(
CanMatchFn— 遅延ルートのゲートにはCanActivateFnよりもこちらを推奨):onboarding-guard.md - オンボーディングページ(動画の背景 + Swiper):onboarding-page.md
- ペイウォールページ(RevenueCat):paywall-page.md
- タブナビゲーション:tabs-navigation.md
- 設定ページ:settings-page.md
複数の領域に関わる項目:
- シグナル(
signal、computed、effect、untracked、シグナルの入力/出力):signals.md - サービス(テーマ/オンボーディング/広告/購入/通知):services.md
- 組み込みの制御フロー(
@if/@for/@switch):control-flow.md - アクセシビリティ(ARIA、タッチターゲット、スクリーンリーダー):accessibility.md
@deferによる遅延レンダリング(ペイウォール/オンボーディングの大きなチャンク):defer-loading.md@ngx-translate/coreによる i18n:i18n-ngx-translate.md- ベストプラクティス(スタンドアロン、ファイルの分割、シグナル優先、
OnPush、inject()):best-practices.md - コマンド(ビルド/同期/オープン):commands.md
ネイティブプラグイン関連の項目は ../ionic-shared/references/ にあります。AdMob、RevenueCat、プッシュ通知、ストレージ、テーマについては、必ずこちらにリンクしてください:
必須ページ(必ず作成)
- オンボーディング — スワイプ式、全画面の背景動画 + グラデーションオーバーレイ。
- ペイウォール — RevenueCat(週払い/年払い)。オンボーディングの直後に表示します。
- 設定 — 言語、テーマ、通知、広告の削除、オンボーディングのリセット。
必須ナビゲーション
ion-tabs + ion-tab-bar を使用してください。カスタムのタブバーを作成したり、サードパーティ製のタブライブラリを追加したりしないでください。
必須ライブラリ
npm install \
@capacitor/preferences @capacitor/push-notifications \
@capacitor/splash-screen @capacitor/status-bar \
@revenuecat/purchases-capacitor @capacitor-community/admob \
@ngx-translate/core @ngx-translate/http-loader \
swiper
厳守事項(Angular 固有)
- ❌ 新しいページ/コンポーネントに NgModules を使用しないでください — スタンドアロンコンポーネントを使用してください。
- ❌ スタンドアロンコンポーネントで
IonicModuleを使用しないでください — 個別のコンポーネント(IonContent、IonButton、…)をインポートしてください。 - ❌
@Componentにインラインのtemplateやstylesを記述しないでください — 必ずtemplateUrlとstyleUrlsを使い、.html、.ts、.scssファイルを分けてください。 - ❌ 非推奨の
@angular/httpを使用しないでください —@angular/common/httpを使用してください。 - ❌
any型を使用しないでください — 適切な TypeScript 型を使用してください。 - ✅ リアクティブな状態にはシグナルを優先してください —
signal()、computed()、effect()を使用します。適切な場合、サービスでは読み取り専用シグナルを公開してください。詳しくは signals.md を参照してください。安定版のシグナル API を使用し、「developer preview」/「experimental」と記された Angular の機能(例:linkedSignal、resource、Signal Forms)は正式版になるまで避けてください。 - ✅ 新しいコンポーネントにはシグナル入力/出力(
input()、input.required()、output())を使用してください。
完了を報告する前に
npm install
npx ng build
npx cap sync
ビルドはエラーなしで完了する必要があります。ネイティブでテストする前に、Web ビルドのたびに cap sync を実行する必要があります。
コメント
Markdown 対応