mcpField
F
frappe-ui

frappe-ui

github.com/frappeデザイン・UI1.1k353 回インストール1 日前に更新
リポジトリ

frappe-ui について

frappe-uiは、frappe-uiのコンポーネントとセマンティックなTailwindトークンでVueのUIを構築するためのスキルです。実装に応じてコンポーネント、データ、セットアップの資料を参照します。

主な機能

  1. 01frappe-uiコンポーネントによるUI構成
  2. 02セマンティックなTailwindトークンでのスタイリング
  3. 03v-modelによるコンポーネント状態の管理
  4. 04コンポーザブル経由のFrappe API呼び出し

活用シーン

  1. 01frappe-uiでのVueページ構築
  2. 02Vue UIとFrappeデータの接続
  3. 03新規Vite・Vue 3プロジェクトのセットアップ

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/frappe/frappe-ui --skill frappe-ui

インストール後、Claude Code で/frappe-uiを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

CORE.md
DATA.md
SETUP.md
evals/
cases-full-24.json
cases.json
findings-2026-08.md
observed-failures-2026-08.md
README.md
run.workflow.js
score_invocation.py

詳細

frappe-ui

frappe-ui のコンポーネントを組み合わせ、ライブラリのセマンティックな Tailwind トークンでスタイルを設定して、Frappe 製品のような見た目と使い心地の UI を構築します。

クイックスタート

<script setup>
import { Button, Dialog, FormControl } from 'frappe-ui'
import { ref } from 'vue'

const open = ref(false)
const name = ref('')
</script>

<template>
  <div class="p-4 bg-surface-base text-ink-gray-8">
    <Button variant="solid" theme="gray" @click="open = true">New Task</Button>
    <Dialog v-model:open="open" title="Create Task">
      <FormControl v-model="name" label="Title" required />
    </Dialog>
  </div>
</template>

参照先

プロパティ名、プロパティ値の型、スロット名、トークン名はここではなく、以下のファイルに記載されています。マークアップを書く前に、必要なファイルを開いてください。

これを書く場合まず開くファイル
あらゆるコンポーネント、ページ、Tailwind クラスCORE.md
データの取得や書き込みを行うものDATA.md
新しい Vite + Vue 3 プロジェクトSETUP.md

規約

以下はすべてのコンポーネントに共通する規約です。それ以外はコンポーネントごとに異なり、 CORE.md に記載されています。

  1. コンポーネントを選びます。 すべてのインタラクティブな要素には CORE.md に記載されたものを使用します。生の HTML はレイアウト用に使います。たとえば、グリッド、フレックス、間隔を設定するラッパーなどです。
  2. 色は variant と theme の 2 つのプロパティで指定します。 値はコンポーネントごとに異なり、それぞれの値は CORE.md に記載されています。独自のマークアップでは、色にセマンティックなスケールを使用します。bg-surface-*、text-ink-*、border-outline-* などです。
  3. 双方向の状態管理には v-model を使います。 入力には v-model を指定します。オーバーレイには v-model:open を指定します。Combobox と MultiSelect では、オプションの v-model:query も使用できます。 List では v-model:selection と v-model:active を使用できます。
  4. アイコンは CSS クラスで指定します。 <span class="lucide-edit size-4" aria-hidden="true" />。 icon という名前のプロパティには、文字列 "lucide-edit" を指定します。
  5. スロット名はコンポーネントごとに異なり、共通ではありません。 <template #…> を書く前に、CORE.md にある該当コンポーネントの項目を確認してください。
  6. Frappe API の呼び出しには use* コンポーザブルを使います。 useCall、 useList、useDoc、useDoctype、useNewDoc はすべて frappe-ui からエクスポートされています。それぞれ受け取るオプションと返すデータの形式が異なります。 DATA.md では、それぞれについて個別に説明しています。

コメント