Communitygithub.com

papopporking-oss/opencode-nextjs-standard

使用 daisyUI 5 的规则集。

opencode-nextjs-standard 是什么?

该技能详细定义了在 Next.js 项目中使用 daisyUI 5 组件库时必须遵循的一组规则。它指导开发者如何结合使用 daisyUI 类名和 Tailwind CSS 实用类来构建界面,并提供了处理 CSS 优先级冲突的方法。此外,该技能还涵盖了如何使用 Tailwind 的 `@utility` 指令全局修改组件样式、使用 daisyUI 提供的语义颜色和工具类(如 `rounded-box`),以及如何通过插件配置来包含或排除基础模块。最后,它建议在不需要时避免使用自定义 CSS 或字体,并推荐了《Refactoring UI》一书中的设计决策方法。该技能适用于使用 Claude Code、Cursor、Codex 等 AI 编码助手进行前端开发时的上下文注入。

兼容平台~Claude Code~Codex CLI~Cursor✓OpenCode
npx skills add https://github.com/papopporking-oss/opencode-nextjs-standard/tree/HEAD/.agents/skills/daisyui/usage

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

daisyUI 5 使用规则

  1. 若要为 HTML 元素设置样式,请为其添加 daisyUI 类名。添加必要的组件类名,同时添加适用的部件和修饰符类名。
  2. 如果当前的 daisyUI 类无法实现必要的更改,请使用 Tailwind CSS 实用类。例如,btn px-10 为 btn 设置自定义水平内边距。
  3. 如果 CSS 优先级阻止了对 daisyUI 样式的更改,请在 Tailwind 实用类末尾添加 !。例如,btn bg-red-500! 会覆盖 btn 的背景颜色。仅在其他方法无效时使用此方法,请勿频繁使用。
  4. 如果 daisyUI 没有适用的组件,请使用 Tailwind CSS 实用类创建组件。
  5. 使用 Tailwind CSS flex 或 grid 进行布局时,请添加响应式实用类前缀。
  6. 仅使用当前的 daisyUI 类名或 Tailwind CSS 实用类。
  7. 如果不需要自定义 CSS,请不要编写。尽可能使用 daisyUI 类名或 Tailwind CSS 实用类。
  8. 如果需要占位图片,请使用 https://picsum.photos/200/300 并指定必要的尺寸。
  9. 如果不需要自定义字体,请不要添加。
  10. 如果不需要 bg-base-100 text-base-content,请不要将其添加到 body 元素。
  11. 对于设计决策,请使用《Refactoring UI》一书中的方法。
  12. 如果用户未请求变体或颜色,请使用默认变体。例如,按钮使用 btn。如果用户未请求该变体,请不要使用 btn btn-primary。

每个 daisyUI 5 类名都属于以下类别之一。这些类别名称仅供参考,请勿在代码中使用它们。

  • component:必要的组件类。
  • part:组件的子部件。
  • style:在组件或部件上设置指定的样式。
  • behavior:改变组件或部件的行为。
  • color:在组件或部件上设置指定的颜色。
  • size:在组件或部件上设置指定的大小。
  • placement:为组件或部件设置指定的位置。
  • direction:为组件或部件设置指定的方向。
  • modifier:以指定的方式改变组件或部件。
  • variant:实用类的前缀,用于在指定条件下应用样式。语法为 variant:utility-class。

在 CSS 中更改组件

使用 Tailwind 的 @utility 指令全局更改 daisyUI 组件:

@utility btn {
  @apply rounded-full;
}

daisyUI 实用类和变量

  • 你可以将语义颜色与 Tailwind 颜色实用类和透明度修饰符一起使用。例如:bg-primary、border-base-300、text-base-content/60。
  • rounded-box、rounded-field 和 rounded-selector 使用活动主题的圆角令牌。
  • glass 应用 daisyUI 的玻璃效果。
  • 某些组件提供 CSS 变量用于特定组件的更改。Countdown 使用 --value 和 --digits。Radial progress 使用 --size 和 --thickness。

基础模块

daisyUI 包含 properties、rootcolor、scrollbar、rootscrolllock、rootscrollgutter 和 svg 基础模块。要从插件配置中排除某个模块,请使用其模块名称:

@plugin "daisyui" {
  exclude: rootscrollgutter;
}

对库模块使用 include 或 exclude。对于视觉更改,请使用 Tailwind 实用类或 @utility。

Individual skills in this repo

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

相关技能