Agent Skills by ALSEL
汎用教育・学習⭐ リポ 37,253品質スコア 95/100

makepad-basics

【重要】Makepadの初期設定とアプリケーション構造の説明に使用します。以下のキーワードで起動します: makepad、Makepad入門、Makepadチュートリアル、live_design!、app_main!、Makepadプロジェクト設定、Makepad Hello World、「Makepadアプリの作成方法」、makepad 入门、创建 makepad 应用、makepad 教程、makepad 项目结构

description の原文を見る

CRITICAL: Use for Makepad getting started and app structure. Triggers on: makepad, makepad getting started, makepad tutorial, live_design!, app_main!, makepad project setup, makepad hello world, "how to create makepad app", makepad 入门, 创建 makepad 应用, makepad 教程, makepad 项目结构

SKILL.md 本文

Makepad Basics スキル

Version: makepad-widgets (dev branch) | Last Updated: 2026-01-19

アップデート確認: https://crates.io/crates/makepad-widgets

あなたは Rust の makepad-widgets クレートの専門家です。以下の方法でユーザーをサポートしてください:

  • コード作成: 以下のパターンに従って Rust コードを生成します
  • 質問回答: 概念を説明し、問題をトラブルシューティングし、ドキュメントを参照します

使用時期

  • Makepad を始めるか、基本的なアプリケーション構造とボイラープレートを理解する必要があります
  • タスクにプロジェクトセットアップ、live_design!app_main!、または最初の画面のアプリケーション配線が含まれます
  • より具体的なレイアウト、ウィジェット、シェーダーのトピックに移動する前に、基礎的な Makepad ガイダンスが必要です

ドキュメント

詳細ドキュメントについては、以下のローカルファイルを参照してください:

  • ./references/app-structure.md - 完全なアプリケーションボイラープレートと構造
  • ./references/event-handling.md - イベント処理パターン

重要: ドキュメント完全性チェック

質問に答える前に、Claude は必ず:

  1. 上記の関連リファレンスファイルを読みます
  2. ファイル読み込みに失敗するか、ファイルが空の場合:
    • ユーザーに通知: 「本地文档不完整,建议运行 /sync-crate-skills makepad --force 更新文档」
    • SKILL.md パターン + 組み込み知識に基づいて回答を続けます
  3. リファレンスファイルが存在する場合、その内容を回答に組み込みます

主要パターン

1. 基本的なアプリケーション構造

use makepad_widgets::*;

live_design! {
    use link::theme::*;
    use link::shaders::*;
    use link::widgets::*;

    App = {{App}} {
        ui: <Root> {
            main_window = <Window> {
                body = <View> {
                    width: Fill, height: Fill
                    flow: Down

                    <Label> { text: "Hello Makepad!" }
                }
            }
        }
    }
}

app_main!(App);

#[derive(Live, LiveHook)]
pub struct App {
    #[live] ui: WidgetRef,
}

impl LiveRegister for App {
    fn live_register(cx: &mut Cx) {
        crate::makepad_widgets::live_design(cx);
    }
}

impl AppMain for App {
    fn handle_event(&mut self, cx: &mut Cx, event: &Event) {
        self.ui.handle_event(cx, event, &mut Scope::empty());
    }
}

2. Cargo.toml セットアップ

[package]
name = "my_app"
version = "0.1.0"
edition = "2024"

[dependencies]
makepad-widgets = { git = "https://github.com/makepad/makepad", branch = "dev" }

3. ボタンクリックの処理

impl AppMain for App {
    fn handle_event(&mut self, cx: &mut Cx, event: &Event) {
        let actions = self.ui.handle_event(cx, event, &mut Scope::empty());

        if self.ui.button(id!(my_button)).clicked(&actions) {
            log!("Button clicked!");
        }
    }
}

4. ウィジェットへのアクセスと変更

// ウィジェット参照を取得
let label = self.ui.label(id!(my_label));
label.set_text("Updated text");

let input = self.ui.text_input(id!(my_input));
let text = input.text();

API リファレンス表

マクロ/型説明
live_design!DSL で UI を定義live_design! { App = {{App}} { ... } }
app_main!エントリーポイントマクロapp_main!(App);
#[derive(Live)]ライブデータを派生#[derive(Live, LiveHook)]
WidgetRefUI ツリーへの参照#[live] ui: WidgetRef
Cxレンダリング用コンテキストfn handle_event(&mut self, cx: &mut Cx, ...)
id!()ウィジェット ID マクロself.ui.button(id!(my_button))

プラットフォームセットアップ

プラットフォーム要件
macOSすぐに利用可能
Windowsすぐに利用可能
Linuxapt-get install clang libaudio-dev libpulse-dev libx11-dev libxcursor-dev
Webcargo install wasm-pack

コード作成時

  1. 必ず必要なインポートを含める: use makepad_widgets::*;
  2. すべての UI 定義に live_design! マクロを使用
  3. LiveRegisterAppMain トレイトを実装
  4. ウィジェット参照に id!() マクロを使用
  5. handle_event メソッドでイベントを処理

質問に回答する際

  1. ライブデザインを強調 - DSL の変更は再コンパイルなしに即座に反映されます
  2. Makepad は GPU ファースト - すべてのレンダリングはシェーダーベースです
  3. クロスプラットフォーム: 同じコードが Android、iOS、Linux、macOS、Windows、Web で実行されます
  4. ウィジェットの探索には UI Zoo の例を推奨します

制限事項

  • このスキルは、上記で説明したスコープに明確に合致するタスクの場合にのみ使用してください
  • 出力は環境固有の検証、テスト、または専門家によるレビューの代替と見なされるべきではありません
  • 必要な入力、パーミッション、安全性の境界、または成功基準が不足している場合は、説明を求めてください

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

詳細情報

作者
sickn33
リポジトリ
sickn33/antigravity-awesome-skills
ライセンス
MIT
最終更新
2026/5/12

Source: https://github.com/sickn33/antigravity-awesome-skills / ライセンス: MIT

関連スキル

Anthropic Claude教育・学習⭐ リポ 8,948

arxiv

arXivから学術論文を検索、ダウンロード、要約できます。ユーザーが「arXivを検索」「論文をダウンロード」「arXivから取得」「論文のPDFを取得」などと指示した場合、またはarXivから論文を見つけてローカルのペーパーライブラリに保存したい場合に使用します。

by wanshuiyin
汎用教育・学習⭐ リポ 69

slr-prisma

PRISMA 2020フレームワークに従ったシステマティックレビュー(SLR)の作成をガイドします。ユーザーが「systematic review」「systematic literature review」「SLR」「PRISMA」「PRISMA 2020」「PRISMA flow diagram」「PRISMAチェックリスト」と言及したり、報告ガイドラインに準拠した文献レビューの執筆、構成、監査をリクエストした場合に活用できます。また、レビューの適格基準、Scopus・WoS・PubMedなどのデータベース検索戦略、研究選定プロセス、バイアスリスク評価、ナラティブシンセシスについての質問があった場合にも対応します。PRISMA 2020チェックリスト全27項目をカバーし、ジャーナル投稿形式のWordドキュメント原稿を作成、注釈付きのPRISMAフロー図を生成、APA第7版の引用形式を厳密に適用します。メタアナリシスや統計的統合には対応していません。

by keemanxp
汎用教育・学習⭐ リポ 41

learning-opportunities

Learning Opportunitiesワークフロースキル。ユーザーがAI支援コーディング中に意図的なスキル開発を促進する必要がある場合に使用します。アーキテクチャ作業(新規ファイル、スキーマ変更、リファクタリング)後にインタラクティブな学習演習を提供します。機能完成時、設計判断時、またはユーザーがコードをより深く理解したいと要求した場合に使用してください。「学習演習」「理解を助けてほしい」「教えてほしい」「なぜこれが機能するのか」といった表現、または新規ファイル・モジュール作成後にトリガーされます。緊急のデバッグ、クイックフィックス、ユーザーが「とにかくリリースしたい」と言った場合には使用しないでください。なお、マージや引き継ぎ前に、オペレーターは上流のワークフロー、コピーされたサポートファイル、およびプロビナンス情報を保持する必要があります。

by diegosouzapw
汎用教育・学習⭐ リポ 448

research-paper-writing

NeurIPS/ICML/ICLRなどの機械学習会議向けの論文を、企画から投稿まで一貫して執筆できます。研究テーマの設計、実験の実施、論文の執筆、そして学会への投稿準備まで、全プロセスをサポートします。

by matevip
汎用教育・学習⭐ リポ 216

software-engineering-research

ソフトウェアエンジニアリングの研究トピックと方法論のガイド

by wentorai
汎用教育・学習⭐ リポ 216

methodology-skills

研究方法論に関する12個のスキル。調査設計、方法論の選択、科学的推論、メンタリングなどがトリガーとなります。定性的、定量的、混合型アプローチを網羅した厳密な方法論フレームワークに基づいて設計されています。

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