本文へ移動
cccskills
無料GitHub で公開

frontend-storybook

Frontend Storybook stories for Vue components, story format, story variants, makeMe builders, Storybook aliases. Use when writing Storybook stories for Vue components.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnutスター 50(GitHub 50 + cccskills 0)

実行スコア 未検証

インストール方法を見る

含まれるファイル(1)

  • SKILL.md3.1 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Frontend Storybook Rules

Vue naming, styling, icons, and derived-state also come from the frontend-component skill (*.stories.ts is *.ts).

Running Storybook

Start Storybook locally for component development and debugging:

CURSOR_DEV=true nix develop -c pnpm storybook

Storybook starts on http://localhost:6006 by default.

Shared Test Data Builders

Storybook stories reuse the same makeMe builders as unit tests. Source code lives in packages/donut-test-fixtures.

import makeMe from "donut-test-fixtures/makeMe"

The makeMe object provides access to test data builders:

  • makeMe.anAnsweredQuestion creates recall prompts with answers.
  • makeMe.anMcq creates MCQ data.
  • makeMe.aNote creates note data.
  • makeMe.aNoteRealm creates note realm data.
  • Many other API-shaped builders are available.
const correctQuestion = makeMe.anAnsweredQuestion
  .answerCorrect(true)
  .withChoiceIndex(0)
  .please()

const questionWithNote = makeMe.anAnsweredQuestion
  .withNote(makeMe.aNote.topicConstructor("TypeScript").please())
  .answerCorrect(true)
  .please()

Writing A Story

  1. Create a file named ComponentName.stories.ts in the same directory as the component.
  2. Import the component and necessary builders.
  3. Define the story meta and stories.
import type { Meta, StoryObj } from "@storybook/vue3"
import makeMe from "donut-test-fixtures/makeMe"
import MyComponent from "./MyComponent.vue"

const meta = {
  title: "Category/MyComponent",
  component: MyComponent,
  tags: ["autodocs"],
} satisfies Meta<typeof MyComponent>

export default meta
type Story = StoryObj<typeof meta>

export const Default: Story = {
  args: {
    prop1: makeMe.someBuilder.please(),
  },
}

Story Variants

Create multiple story variants to showcase different component states:

export const Variant1: Story = {
  args: {
    // props for variant 1
  },
}

export const Variant2: Story = {
  args: {
    // props for variant 2
  },
}

Module Aliases

Storybook supports the same module aliases as the main application:

  • @/ points to src/.
  • @tests/* points to tests/, for example @tests/helpers.
  • @generated/ points to generated/.

For API-shaped fixtures, import makeMe from donut-test-fixtures/makeMe; do not use an @tests/fixtures alias.

Global Styles

Storybook automatically loads global styles from src/assets/daisyui.css, including Tailwind CSS base styles, DaisyUI component styles, and custom application styles.

Best Practices

  1. Reuse builders: always use makeMe instead of ad-hoc mock objects that duplicate API shapes.
  2. Avoid duplication: use builders for consistency.
  3. Add multiple variants to showcase different component states.
  4. Use the autodocs tag to automatically generate documentation.
  5. Keep builders framework-neutral so they work in both tests and Storybook.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

backend

無料

Backend Java — Spring Boot controllers/services, JUnit controller tests, MakeMe. Read this first for any backend work. Use when working on the Java Spring backend.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnut502026年10月26日 更新

Backend Java production code, Spring Boot controllers/services/repositories, controller return values, imports, schema ERD pointer. Use when editing backend production Java.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnut502026年10月26日 更新

Backend Java tests, controller-level stable-boundary tests, JUnit, @Nested, MakeMe builders, @Transactional, parameterized tests. Use when writing or changing backend JUnit tests.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnut502026年10月26日 更新

cli

無料

related to donut CLI. Use when working on donut-cli.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnut502026年10月26日 更新

Set up and run the Donut dev environment on Cursor Cloud VM (no Nix). Use when working on Cloud VM, running tests on Cloud VM, or encountering command errors related to missing nix. Triggers on: cloud VM, cloud agent, no nix available, /workspace path.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnut502026年10月26日 更新

Regenerate docs/database-erd.md from MySQL information_schema (Mermaid ERD: foreign keys and key columns). Use after Flyway schema changes, new migrations, or when the diagram is stale. Triggers on: database ERD, database-erd.md, export_database_erd, schema diagram, ER diagram after migration.

日本語の概要は準備中です。原文の説明を表示しています。

nerds-odd-e/doughnut502026年10月26日 更新

nerds-odd-e のスキルをすべて見る

このスキルの問題を報告する