本文へ移動
cccskills
無料GitHub で公開

mobile-components

Use this skill when creating, modifying, or debugging Ionic Vue components, pages, forms, dialogs, or theme/safe-area UI behavior.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md3.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

mobile-components — Canonical Skill

Purpose

Enforce the verified Ionic component and page conventions.

When to use

Any page, shared component, form, dialog, loading/empty/error state, or theme change.

Required reading

  • skills/mobile/COMPONENTS.md
  • docs/agent/STANDARD_PAGE_COMPONENT.md (new-page skeleton)

Relevant project locations

  • src/pages/, src/components/base/ (BasePage.vue, BaseButton.vue, …)
  • src/assets/css/, src/composables/useTheme.ts, src/composables/useDevice.ts

Mandatory rules

  1. New route pages must use BasePage as the root (use its #content slot when the page needs its own IonContent ref or an IonFooter). Only the existing login, index, and tabs shell use IonPage directly.

  2. Reuse src/components/base/*; no Quasar/Nuxt components. Buttons must use BaseButton — never a native <button> or bare IonButton; icons must use BaseIcon — never a bare <ion-icon>; avatars must use BaseAvatar — never a bare <ion-avatar>; images must use BaseImage — never a bare <img>/<ion-img>; user-written text must use BaseContentItem with is-escape-html and a useId() content-id; action menus must use BaseDropdownMenu (items + @on-select), not a hand-built BasePopover list (see skills/mobile/COMPONENTS.md §1).

  3. For re-entry behavior, use Ionic page lifecycle; current pages do not establish a universal view-hook pattern.

  4. Do not invent brand colors; respect existing theme + safe-area handling. Colours come from color.scss (Tailwind v4 palette, 50…950: text-red-500, bg-gray-100, var(--color-zinc-800)); no Quasar colour names or 1–14 shades. Theme values use the --app-<group>-<role> tokens in variables.scss (dark overrides the same token), valued from the palette — no raw hex (see skills/mobile/COMPONENTS.md §5).

  5. For page-specific dark styles in a scoped Vue SFC, target the page class under body[color-theme='dark']; for Ionic IonContent, set --background. Check the selector pattern in skills/mobile/COMPONENTS.md §5.

  6. Every page — including new ones — uses the shared design system (skills/mobile/COMPONENTS.md §6): BasePage glass header (large title via collapse="condense" for root/list pages), .app-page layout, .app-section(-header|-label), BaseCard + .app-surface*, chips, .app-num for figures, BaseSegment, --app-* tokens for radius, shadow and motion. Do not restyle cards, lists, headers or tab bars per page; extend mobile-ui.scss/tokens instead (both themes + fallbacks).

Implementation workflow

  1. Inspect the target page and its nearest reusable component/peer pattern.
  2. Reuse base components; wire props/emits/slots/v-model consistently.
  3. Handle loading/error/empty states; clean up listeners on leave.
  4. Verify per mobile-testing (component + lifecycle where cached).

Verification

Component render/interaction checks; visual check on web; native check only with device/emulator evidence.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Use this skill when adding or changing REST API calls, HTTP client config, error handling, uploads/downloads, or network behavior.

日本語の概要は準備中です。原文の説明を表示しています。

bekaku/vue-ionic-example-app62026年10月5日 更新

Use this skill when working on login, logout, session restore, tokens, route guards, or any authentication and authorization behavior.

日本語の概要は準備中です。原文の説明を表示しています。

bekaku/vue-ionic-example-app62026年10月5日 更新

Use this skill when building, syncing Capacitor, or preparing Android/iOS releases and environment configuration.

日本語の概要は準備中です。原文の説明を表示しています。

bekaku/vue-ionic-example-app62026年10月5日 更新

Use this skill for any Ionic Vue + Capacitor mobile work: Vue architecture, Composition API, TypeScript, state, env config, shared conventions. Required for every implementation task alongside mobile-testing.

日本語の概要は準備中です。原文の説明を表示しています。

bekaku/vue-ionic-example-app62026年10月5日 更新

Use this skill when handling inbound URLs, custom schemes, app links, universal links, or URL-bearing notification payloads.

日本語の概要は準備中です。原文の説明を表示しています。

bekaku/vue-ionic-example-app62026年10月5日 更新

Use this skill when working on camera, gallery, file pick/upload/download, file preview, sharing, or filesystem-backed media. For Preferences keys, use mobile-local-data.

日本語の概要は準備中です。原文の説明を表示しています。

bekaku/vue-ionic-example-app62026年10月5日 更新

bekaku のスキルをすべて見る

このスキルの問題を報告する