Communitygithub.com

KrostyMall/Landing-SENSORITY

TanStack Start + React + Tailwind v4 + shadcn/Radix アプリ向けに、個性的で高品質なUIをデザイン・構築します。ページ、ランディングページ、ダッシュボード、フォーム、モーダル、ナビゲーション、ゲームオーバーレイ(スタート画面、HUD、メニュー)など、あらゆるインターフェース面の作成やリスタイル時に使用します。デザイントークン、レイアウト、タイポグラフィ、カラー、スペーシング、モーション、そして「AIスロップ」対策ルールを網羅しています。

Landing-SENSORITY とは?

このスキルは、TanStack Start + React + Tailwind v4 + shadcn/Radix スタックで構築されるアプリケーションにおいて、テンプレート的な「AIスロップ」を排除し、意図的でプレミアムなUIを実現するための設計システムを提供します。CSS変数として`@theme`にデザイントークンを一元管理し、それをTailwindユーティリティとして消費することで、アドホックなスタイリングを禁止します。また、shadcn/uiコンポーネントを活用してアクセシビリティと一貫性を担保し、具体的な評価基準(カラー数≤5、フォント数≤2、モバイルファーストなど)と、絵文字アイコンやグラデーションブロブ、プレースホルダ画像などの「AIスロップ」を回避するためのルールを定義しています。さらに、ゲームオーバーレイのスタイリングや、ブラウザでの実機確認を必須とする完了チェックリストも含まれており、プロダクション品質のUI構築を強力に支援します。

対応~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/KrostyMall/Landing-SENSORITY/tree/HEAD/.grok/skills/design-ui

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

デザイン & UI

意図的でプレミアムなインターフェースを、テンプレート的な汎用品ではなく作りましょう。これはアプリビルダーにおける最大の品質向上のレバーです。DOM / オーバーレイ UI(ページ、クローム、HUD、メニュー、フォーム)に適用してください。(3Dゲームのゲームプレイキャンバスについては、building-games スキルを参照してください。このスキルはその上に重なるDOM UIを統制します。)

詳細は references/ を参照してください(必要に応じて読み込まれます。ここにすべてをインライン化しないでください):

  • references/refined-ui.md — 完全なプロダクトクローム/オーバーレイデザインシステム
  • references/typography.md — タイプスケール、ペアリング、リズム
  • references/surfaces.md — エレベーション、ボーダー、シャドウ、レイヤリング
  • references/animations.md — モーション、イージング、トランジション
  • references/performance.md — UIをスムーズに保つ(60fps、カクつきなし)

1. デザインシステムファースト(スタイリングの前に行うこと)

システムを一度定義し、それから組み立ててください。アドホックな値を決して散りばめないでください。

  • CSSのトークン(Tailwind v4はCSSファーストです)。 パレット、角丸、フォントを src/styles.css の @theme 内にCSS変数として定義し、Tailwindユーティリティとして使用します。真実の情報源は一つです。
    @import "tailwindcss";
    @theme {
      --color-bg: #0b0b0f;      --color-surface: #16161d;
      --color-fg: #e7e7ea;      --color-muted: #a0a0ab;
      --color-primary: #14b8a6; --color-border: #26262f;
      --radius: 0.75rem;        --font-sans: "Inter", system-ui, sans-serif;
    }
    
  • shadcn/ui コンポーネントを使用します(Radixプリミティブ + cva バリアント + tailwind-merge)。ボタン、ダイアログ、ドロップダウン、入力などに使用します。これらはアクセシブルで一貫性があります。src/components/ui に生成し、トークンでスタイリングし、インラインの16進数は使用しないでください。
  • Tailwind v4 のベース修正 — ボタンにはポインターカーソルが必要です。 v4 の Preflight は <button> に cursor: default を設定するため、壊れたように感じられます。これを src/styles.css に一度追加して、ボタン/クリック可能なロールがポインターを表示するようにします:
    @layer base {
      button:not(:disabled),
      [role="button"]:not(:disabled) { cursor: pointer; }
    }
    
  • アドホックなスタイリングを禁止します: JSX内での生の16進数、text-white/bg-black といったリテラル、p-[16px] や text-[13px] のような任意の値は使用しないでください。値が必要な場合は、トークンまたはスケールステップにします。

2. 定量化された評価基準(「醜い」を防ぐ安価なルール)

  • 合計 ≤ 3〜5色(1つのプライマリ + ニュートラル + 多くても1つのアクセント)。ランダムな追加色は禁止です。特に指定がない限り、デフォルトでパープルにしないでください。
  • フォントファミリーは ≤ 2(多くの場合1つ)。ディスプレイ/見出し用と本文用を組み合わせるか、1つだけを使用します。
  • 行間は 1.4〜1.6 (本文)。大きな見出しではより狭くします。
  • 背景色を上書きするときは、前景色(テキスト色)も一緒に上書きします(コントラストが維持されていることを確認してください — ライトモードとダークモードの両方をチェックします)。
  • モバイルファースト:最初に ~390px のレイアウトをデザインし、その後スケールアップします。水平方向のはみ出しは禁止。タップターゲットは ≥ 44px。
  • 一貫したスペーシングスケール(4/8ベース)。詰め込みすぎよりも、余白をたっぷり使う方が優れています。
  • アクセントは1つ、控えめに使用します。プライマリアクションにのみ使用し、あらゆる場所には使いません。

3. アンチAIスロップ(出力が汎用的に見える兆候 — 避けるべきもの)

  • グラデーションブロブのフィラー、コンテンツの代わりとなる巨大なヒーローグラデーションは使用しないでください。
  • 絵文字をアイコンとして使用しないでください — 実際のアイコンセット(lucide-react)を使用します。
  • 手書きSVGのイラスト/地図/チャートは使用しないでください — 実際のライブラリ(チャートには recharts)または実際に生成された画像を使用します。
  • 最終製品にプレースホルダ画像 / ダミーのグレーボックスを残さないでください — 実際の画像を生成するか、実際のコンテンツを使用します。キャンバス画像には crossOrigin="anonymous" を設定します。
  • 使い古されたフォント(デフォルトのシステムフォントのみ、またはComic Sansレベルの選択)は避けてください。
  • すべての要素はその存在価値を証明する必要があります。 装飾的なノイズは削除しましょう。システムを確立し、意図を持って変化させましょう — ランダムではありません。
  • アプリをその場で編集するときは、既存のUIに合わせてください。異なるビジュアル言語を持ち込まないでください。

4. レイアウトと階層

  • 明確なビジュアル階層:ビューごとに1つのプライマリアクション。サイズ/ウェイト/カラーで重要度を表現します。references/typography.md と references/surfaces.md を参照してください。
  • 実際のレイアウト構造(グリッド/フレックス、コンテナの最大幅)を使用し、絶対配置のハックは使用しないでください。一貫したグリッドに揃えます。
  • 空の状態、ローディング状態、エラー状態もデザインの一部です — 真っ白でカクつく中間状態をリリースしないでください。

5. モーション(控えめで、目的のあるもの)

  • ホバー/プレス/入力時には、短くイージングされたトランジション(150〜250ms)。prefers-reduced-motion を尊重します。詳細は references/animations.md を参照してください。
  • カクつきを引き起こすようなレイアウトのアニメーションは避けてください。transform/opacity を優先します。

6. ゲームオーバーレイ(building-games と組み合わせる場合)

ゲームプレイキャンバスは building-games が所有します。このスキルは DOM オーバーレイ(スタート画面/「クリックしてプレイ」画面、HUD、スコア、メニュー、ポーズ、モバイルコントロール)のスタイリングを行います。オーバーレイはキャンバス上でも読みやすく(背景、コントラスト)、ポインターロック/ゲームプレイの入力パスからは除外してください。


完了チェックリスト(UI完了と判断する前に)

  • @theme にトークンが定義されていること。JSX内にアドホックな16進数/任意の値がないこと。
  • ≤ 5色、≤ 2フォント、一貫したスペーシングスケール。
  • コントラストが維持されていること。背景を上書きした場所では前景も上書きされていること。
  • モバイル(~390px)ではみ出しがないこと。ターゲット ≥ 44px。
  • 実際のアイコン/画像/チャートを使用していること — アンチスロップの兆候がないこと。
  • ローディング/空/エラー状態が処理されていること。モーションは控えめで、prefers-reduced-motion に対応していること。
  • ブラウザでレンダリングし、目視確認済みであること(AGENTS.md の検証を参照)。単なるcurlではないこと。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

KrostyMall/Landing-SENSORITY

Add user accounts and sign-in to this TanStack Start app. Use when the app needs authentication, sign-in, user accounts, protected routes, or per-user data. Triggers on "auth", "login", "log in", "sign in", "sign up", "account", "users", "authentication", "protected", "who is logged in", "current user", "per-user".

KrostyMall/Landing-SENSORITY

Build browser games and interactive/canvas/3D experiences in this TanStack Start + React app. Use for any game, simulation, or WebGL/Canvas experience — 2D or 3D, single-player. Covers the game loop & timing, 3D orientation/camera conventions, collision, performance, assets, audio, save, game feel, and per-genre playbooks. For WASD / vehicle / flight **input signs and inverted A/D**, open the **`controls`** skill — do not rely on this file or racing-kart alone. Triggers on "game", "minecraft", "fps", "platformer", "racing", "tetris", "snake", "shooter", "3d", "three.js", "canvas", "voxel", "physics".

KrostyMall/Landing-SENSORITY

Player-facing input signs for browser games: WASD, vehicles, flight, FPS mouse-look, and the #1 failure mode (inverted A/D). Mandatory control self-tests and a tiny test interface so you can verify A turns left before shipping. Load for ANY game with movement, steering, flying, driving, tanks, boats, mechs, drones, planes, karts, third-person follow cams — not only racing. Triggers on "controls", "WASD", "inverted", "steer", "flight", "airplane", "kart", "vehicle", "yaw", "roll", "pitch", "mouse look", "A/D".

KrostyMall/Landing-SENSORITY

Deep guide for game ANIMATION assets: motion cycles, action keyframes, effect sequences, and animation sprite sheets — built around a video-first pipeline. In this app-builder sandbox, execute via the video2dsprite / generate2dsprite skills (magenta + scripts), not ad-hoc ffmpeg. Use whenever generating anything that moves: walk/run cycles, attacks, idles, FX, flags, fire, animation sheets. Complements game-asset-core.

関連スキル