

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
123456UI and Styling Guidelines:78Component Library:9- Use HeroUI and Tailwind for components and styling10- Use lucide-react for icon. Sometime @iconify/react in code base, ignore it.11- Implement responsive design with Tailwind CSS; use a mobile-first approach1213Tailwind CSS 使用规范:14- 采用移动优先的响应式设计15```tsx16// ✅ 正确示例17<div className="w-full md:w-1/2 lg:w-1/3">18```1920布局规范:21- 使用 Flexbox 和 Grid 进行布局22- 使用 gap 替代 margin 处理元素间距23```tsx24// ✅ 正确示例25<div className="flex gap-4">26// ❌ 错误示例27<div className="flex [&>*]:mr-4">28```2930响应式设计断点:31- sm: 640px32- md: 768px33- lg: 1024px34- xl: 1280px35- 2xl: 1536px3637可访问性规范:38- 实现 ARIA 标签39- 确保充足的颜色对比度40- 支持屏幕阅读器41- 添加键盘快捷键42```tsx43// ✅ 正确示例44<button45 aria-label="关闭对话框"46 className="text-gray-500 hover:text-gray-700"47 onClick={onClose}48>49```5051组件最佳实践:52- 组件使用函数式声明53- Props 使用 TypeScript 接口定义54- 实现合适的加载和错误状态55```tsx56interface ButtonProps {57 isLoading?: boolean;58 variant?: 'primary' | 'secondary';59 children: React.ReactNode;60}6162function Button({ isLoading, variant = 'primary', children }: ButtonProps) {63 return (64 <button65 className={cn(66 'px-4 py-2 rounded-md',67 variant === 'primary' ? 'bg-primary-600' : 'bg-secondary-600',68 isLoading && 'opacity-50 cursor-not-allowed'69 )}70 disabled={isLoading}71 >72 {isLoading ? <LoadingSpinner /> : children}73 </button>74 );75}76```7778性能优化:79- 使用 React.memo() 优化渲染80- 实现组件懒加载81- 优化图片加载82```tsx83// 组件懒加载84const HeavyComponent = dynamic(() => import('./HeavyComponent'), {85 loading: () => <LoadingSpinner />86});8788// 图片优化89<Image90 src="/hero.jpg"91 alt="Hero image"92 width={1200}93 height={600}94 placeholder="blur"95 priority96/>97```9899主题和暗色模式:100- use `bg-background` and `text-foreground`101- 使用 Tailwind 的暗色模式, 实现一致的颜色系统102```tsx103// ✅ 正确示例104<div className="bg-background">105 <p className="text-foreground">106```107- 使用语义化的颜色变量108```tsx109// ✅ 正确示例110<button className="bg-primary-600 hover:bg-primary-700">111// ❌ 错误示例112<button className="bg-blue-600 hover:bg-blue-700">113```
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| leaperone/MultiPost-Extension.cursor/rules/ai.mdc · 3.0k | Cursor rules | no sections | 16/100 | today | |
| leaperone/MultiPost-Extension.cursor/rules/chrome-extension.mdc · 3.0k | Cursor rules | docs | 48/100 | today | |
| leaperone/MultiPost-Extension.cursor/rules/comment.mdc · 3.0k | Cursor rules | lint-formatstyletypesdocs | 66/100 | today | |
| leaperone/MultiPost-Extension.cursor/rules/i18n.mdc · 3.0k | Cursor rules | no sections | 36/100 | today | |
| leaperone/MultiPost-Extension.cursor/rules/typescript.mdc · 3.0k | Cursor rules | buildstyle | 52/100 | today | |
| leaperone/MultiPost-ExtensionCLAUDE.md · 3.0k | CLAUDE.md | lint-formatstylearchtypes+2 | 81/100 | today |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 46 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 14 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 46 | Cursor rules | teststyletesting-strategysecurity+3 | 97/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/leaperone-multipost-extension-cursor-rules-ui)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.