mcpField
B
b24-ui-nuxt

b24-ui-nuxt

github.com/bitrix24デザイン・UI4488 回インストール2 週間前に更新
リポジトリ

b24-ui-nuxt について

b24-ui-nuxt は、Reka UI、Tailwind CSS、Tailwind Variants を使った Vue 向けコンポーネントライブラリです。このスキルは、Nuxt、Vue、Laravel、AdonisJS のプロジェクトでコンポーネントを選び、Bitrix24 UI の規約に沿って実装するための指針を提供します。

主な機能

  1. 01コンポーネント選択の指針
  2. 02デザインシステムと実装規約
  3. 03ページレイアウトとタスク別レシピ
  4. 04UI タスクに応じた参考資料の案内
  5. 05対応環境のインストール手順

活用シーン

  1. 01ダッシュボードやランディングページの構築
  2. 02フォーム、テーブル、ナビゲーションの作成
  3. 03ダイアログ、エディター、チャット UI の追加
  4. 04設定コントロールやカードピッカーの選定

インストール

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

$npx skills add https://github.com/bitrix24/b24ui --skill b24-ui-nuxt

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

同梱ファイル

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

references/
components.md
references/guidelines/
component-selection.md
conventions.md
design-system.md
forms.md
icons.md
references/layouts/
dashboard.md
landing.md
references/recipes/
card-pickers.md
data-tables.md
detail-panel.md
navigation.md
overlays.md
settings.md
task-form.md

詳細

Bitrix24 UI

Reka UI + Tailwind CSS + Tailwind Variants を基盤とする Vue コンポーネントライブラリです。Nuxt、Vue(Vite)、Laravel(Vite + Inertia)、AdonisJS(Vite + Inertia)で動作します。

LLMs.txt

コンポーネントが何を受け取るのか、またはAPI がどのように動作するのか(props、slots、events、ドキュメント全体、例)を知りたい場合は、Bitrix24 UI ドキュメントを使用してください。まだ設定されていない場合は、追加してください。このスキルでは、どのコンポーネントをいつ使うか、適切に構築する方法を説明します。

基本ルール(常に適用)

  1. アプリは必ず B24App でラップしてください — トースト、ツールチップ、プログラムによるオーバーレイに必要です。i18n 用の locale prop を受け取ります。
  2. 必ずセマンティックカラーを使用してください — text-description、bg-elevated、border-muted などです。text-gray-500 のような Tailwind の生のパレットカラーは使用しないでください。
  3. slot 名を確認するには、生成されたテーマファイルを読んでください — Nuxt の場合は .nuxt/b24ui/<component>.ts、Vue の場合は node_modules/.b24ui-nuxt/b24ui/<component>.ts です。これらのファイルには、各コンポーネントのすべての slot、variant、デフォルトのクラスが示されています。
  4. 上書きの優先順位(上ほど優先):b24ui prop / class prop → グローバル設定 → テーマのデフォルト値。
  5. アイコンのガイドラインからアイコンを見つけてください — 通常の言葉でのリクエストを適切な import に対応づけています。

このスキルの使い方

タスクに応じて、コードを書く前に関連するリファレンスファイルを読み込んでください。すべてを読み込むのではなく、必要なものだけを読み込んでください。

リファレンスファイル

ガイドライン — デザイン上の判断と規約:

  • design-system — セマンティックカラー、テーマ設定、ブランドのカスタマイズ、variant、b24ui prop
  • component-selection — Modal と Slideover、Select と SelectMenu、Toast と Alert などを選ぶための判断基準
  • conventions — コーディングパターン、slot の命名、items 配列、composable、キーボードショートカット
  • forms — フォームの検証、フィールドのレイアウト、エラー処理、Standard Schema
  • icons — アイコンの import と使用方法

レイアウト — ページ全体の構成パターン:

  • landing — ランディングページ
  • dashboard — サイドバーとパネルを備えた管理 UI

レシピ — よくあるタスクの完全なパターン:

  • data-tables — フィルター、ページネーション、並べ替え、選択機能を備えたテーブル
  • overlays — モーダル、スライドオーバー、ドロワー、コマンドパレット、情報ポップオーバー
  • navigation — ヘッダー、サイドバー、パンくずリスト、タブ
  • card-pickers — 設定のvariantを選択したり、機能を切り替えたりするための、アイコンと説明を備えたカードグリッド(B24PageCardGroup)
  • settings — 設定画面のレイアウト:Switch、Radio、Checkbox、PageCardGroup の使い分けと、プレビュー画像、説明、「詳細を見る」リンクを含むリッチな card variant のレシピ
  • detail-panel — エンティティ情報のサイドバー:メインビューの横に配置するメタデータ、切り替え可能な設定、グループ化されたコンテンツセクション
  • task-form — B24Editor、担当者フィールド、日付ピッカー、折り返し可能な副次アクション行を組み合わせた、1 列のタスク/課題フォーム

クイックリファレンス:

  • components — 適切なコンポーネント名を探すための、カテゴリ別コンポーネント一覧
ルーティングテーブル
タスク読み込むリファレンス
Bitrix24 向けアプリケーション/ダッシュボード/管理 UI を構築するconventions, component-selection, dashboard
ランディングページを作成するdesign-system, conventions, landing
設定ページを追加するconventions, forms, settings
各選択肢にプレビュー画像、複数行の説明、インラインの「詳細を見る」リンクが必要な場合に、1 つの選択肢を選ぶ/複数の選択肢を切り替える — レイアウト選択、スクリーンショット付きのプラン選択conventions, settings
ログイン/サインアップフォームを作成するconventions, forms, component-selection
データをテーブルに表示するconventions, component-selection, data-tables
チャットインターフェースを追加するconventions, components (§ Chat)
モーダル、スライドオーバー、またはドロワーを追加するconventions, component-selection, overlays
サイトナビゲーションを構築するconventions, component-selection, navigation
Markdown をレンダリングするcomponent-selection, components (§ Prose and § Content)
アイコンと一文が必要な少数の選択肢から、1 つを選ぶ(または複数を切り替える) — 設定のバリエーション、機能フラグ、「何を作成しますか?」ウィザードのステップconventions, component-selection, card-pickers
リッチテキストエディターを追加するconventions, components (§ Editor)
リッチテキストの説明、担当者、期限を含むタスク/課題フォームを作成するconventions, forms, task-form
エンティティ情報のサイドバーを構築する — チャンネル情報、CRM レコードの詳細、「この項目について」conventions, component-selection, detail-panel
ボタン、項目、または空の状態に使うアイコンを見つけるicons
一般的な UI 作業conventions, component-selection

インストール

Nuxt
pnpm add @bitrix24/b24ui-nuxt @bitrix24/b24icons-vue tailwindcss
// nuxt.config.ts
export default defineNuxtConfig({
  modules: ['@bitrix24/b24ui-nuxt'],
  css: ['~/assets/css/main.css']
})
/* app/assets/css/main.css */
@import "tailwindcss";
@import "@bitrix24/b24ui-nuxt";

<template>
  <B24App>
    <NuxtPage />
  </B24App>
</template>
Vue (Vite)
pnpm add @bitrix24/b24ui-nuxt @bitrix24/b24icons-vue tailwindcss
// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import bitrix24UIPluginVite from '@bitrix24/b24ui-nuxt/vite'

export default defineConfig({
  plugins: [
    vue(),
    bitrix24UIPluginVite()
  ]
})
// src/main.ts
import './assets/main.css'
import { createApp } from 'vue'
import { createRouter, createWebHistory } from 'vue-router'
import b24UiPlugin from '@bitrix24/b24ui-nuxt/vue-plugin'
import App from './App.vue'

const app = createApp(App)
const router = createRouter({
  routes: [],
  history: createWebHistory()
})

app.use(router)
app.use(b24UiPlugin)
app.mount('#app')
/* src/assets/css/main.css */
@import "tailwindcss";
@import "@bitrix24/b24ui-nuxt";

<template>
  <B24App>
    <RouterView />
  </B24App>
</template>

index.html のルート <div id="app"> に class="isolate" を追加してください。 Inertia の場合は、vite.config.ts で b24ui({ router: 'inertia' }) を使用してください。

コメント