Agent Skills by ALSEL
Anthropic Claudeデザイン・クリエイティブ⭐ リポ 0品質スコア 50/100

compose-ui

Jetpack ComposeでUIを構築する際のベストプラクティスを提供するスキルで、状態ホイスティング、詳細なパフォーマンス最適化、テーマ設定に重点を置いています。Composableファンクションのコーディングやリファクタリングをするときはこのスキルを使用してください。

description の原文を見る

Best practices for building UI with Jetpack Compose, focusing on state hoisting, detailed performance optimizations, and theming. Use this when writing or refactoring Composable functions.

SKILL.md 本文

Jetpack Compose ベストプラクティス

手順

パフォーマンスが高く、再利用可能で、テスト可能な Composable を作成するために、以下のガイドラインに従ってください。

1. State Hoisting(単方向データフロー)

State を呼び出し元に移動させることで、Composable を ステートレス にするよう心がけてください。

  • パターン: 関数シグネチャは通常以下のようになります:
    @Composable
    fun MyComponent(
        value: String,              // State は上から下へ流れる
        onValueChange: (String) -> Unit, // イベントは下から上へ流れる
        modifier: Modifier = Modifier // 標準的な modifier パラメータ
    )
    
  • メリット: UI をシンプルな state 保存から分離し、プレビューとテストが容易になります。
  • ViewModel との統合: スクリーンレベルの Composable が ViewModel から state を取得し(viewModel.uiState.collectAsStateWithLifecycle())、それを下層に渡します。

2. Modifier

  • デフォルト値パラメータ: modifier: Modifier = Modifier をオプションパラメータの最初に常に提供してください。
  • 適用: この modifier を Composable の ルート レイアウト要素に適用してください。
  • 順序が重要: padding().clickable()clickable().padding() と異なります。一般的に、パディングがクリック可能にしたい場合は、レイアウト関連の modifier(パディングなど)を click listener の 後に 適用してください。

3. パフォーマンス最適化

  • remember: 再コンポジション間で高コストな計算をキャッシュするために remember { ... } を使用してください。
  • derivedStateOf: state が頻繁に変わる場合(スクロール位置など)でも、UI がしきい値またはサマリーに対してのみ反応する必要がある場合(例:「トップへジャンプ」ボタンを表示)、derivedStateOf { ... } を使用してください。これにより不要な再コンポジションが防げます。
    val showButton by remember {
        derivedStateOf { listState.firstVisibleItemIndex > 0 }
    }
    
  • Lambda の安定性: 不安定な型の再コンポジションを防ぐために、メソッド参照(例:viewModel::onEvent)またはメモ化された lambda を優先してください。

4. テーマ設定とリソース

  • ハードコードされた色やテキストスタイルの代わりに、MaterialTheme.colorSchemeMaterialTheme.typography を使用してください。
  • シンプルな UI コンポーネントが複数の機能で共有される場合、特定のファイル(例:DesignSystem.kt または Components.kt)に整理してください。

5. プレビュー

  • すべての public Composable に対して private プレビュー関数を作成してください。
  • @Preview(showBackground = true) を使用し、該当する場合はライト/ダークモードのプレビューを含めてください。
  • ステートレス Composable にダミーデータ(静的)をプレビューに渡してください。

ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
new-silvermoon
リポジトリ
new-silvermoon/awesome-android-agent-skills
ライセンス
Apache-2.0
最終更新
不明

Source: https://github.com/new-silvermoon/awesome-android-agent-skills / ライセンス: Apache-2.0

関連スキル

汎用デザイン・クリエイティブ⭐ リポ 1,739

nano-banana-2

inference.sh CLIを通じてGoogle Gemini 3.1 Flash Image Preview(Nano Banana 2)で画像を生成します。テキストから画像を生成する機能、画像編集、最大14枚の複数画像入力、Google Searchグラウンディング機能に対応しています。トリガーワード:「nano banana 2」「nanobanana 2」「gemini 3.1 flash image」「gemini 3 1 flash image preview」「google image generation」

by openakita
汎用デザイン・クリエイティブ⭐ リポ 815

octocode-slides

洗練されたマルチファイル形式のHTMLプレゼンテーションを生成します。6段階のフロー(概要 → リサーチ → アウトライン → デザイン → 実装 → レビュー)で構成されています。各スライドは独立したHTMLファイルとなり、iframeで読み込まれます。「スライドを作成してほしい」「プレゼンテーションを作ってほしい」「HTMLスライドを生成してほしい」「デックを構築してほしい」といった依頼や、ノート・ドキュメント・コードを洗練されたプレゼンテーションに変換する際に使用できます。

by bgauryy
汎用デザイン・クリエイティブ⭐ リポ 482

gpt-image2-ppt

OpenAIのgpt-image-2を使用して、視覚的に優れたPPTスライドを生成します。Spatial Glass、Tech Blue、Editorial Monoなど10種類のキュレーション済みスタイルに対応し、ユーザーが提供したPPTXファイルを模倣するテンプレートクローンモードも搭載しています。HTMLビューアと16:9形式のPPTXファイルを出力します。プレゼンテーション、スライド、ピッチデック、投資家向けPPT、雑誌風PPTの作成依頼などで活用してください。

by JuneYaooo
Anthropic Claudeデザイン・クリエイティブ⭐ リポ 299

nano-banana

Nano Banana PRO(Gemini 3 Pro Image)およびNano Banana(Gemini 2.5 Flash Image)を使用したAI画像生成機能です。以下の場合に活用できます:(1)テキストプロンプトからの画像生成、(2)既存画像の編集、(3)インフォグラフィックス、ロゴ、商品写真、ステッカーなどのプロフェッショナルなビジュアルアセット制作、(4)複数画像での人物キャラクターの一貫性保持、(5)正確なテキスト描画を含む画像生成、(6)AI生成ビジュアルが必要なあらゆるタスク。「画像を生成」「画像を作成」「写真を作る」「ロゴをデザイン」「インフォグラフィックスを作成」「AI画像」「nano banana」またはその他の画像生成リクエストをトリガーとして機能します。

by majiayu000
Anthropic Claudeデザイン・クリエイティブ⭐ リポ 299

oiloil-ui-ux-guide

モダンでクリーンなUI/UXガイダンス・レビュースキルです。新機能や既存システム(Webアプリ)に対して、実行可能なUI/UX改善提案、デザイン原則、デザインレビューチェックリストが必要な場合に活用できます。CRAP(コントラスト・反復・配置・近接)をベースに、タスクファーストなUX、情報設計、フィードバック・システムステータス、一貫性、affordances、エラー防止・復旧、認知負荷を重視します。モダンミニマルスタイル(クリーン・余白・タイポグラフィ主導)を強制し、不要なテキストを削減、アイコンとしての絵文字を禁止し、統一されたアイコンセットから直感的で洗練されたアイコンを推奨します。

by majiayu000
Anthropic Claudeデザイン・クリエイティブ⭐ リポ 299

axiom-hig-ref

Apple Human Interface Guidelines リファレンス — 色(セマンティックカラー、カスタムカラー、パターン)、背景(マテリアル階層、ダイナミック背景)、タイポグラフィ(標準スタイル、カスタムフォント、Dynamic Type)、SF Symbols(レンダリングモード、色、多言語対応)、ダークモード、アクセシビリティ、プラットフォーム固有の考慮事項を網羅したガイドラインです。

by majiayu000
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: new-silvermoon · new-silvermoon/awesome-android-agent-skills · ライセンス: Apache-2.0