diff --git a/.claude/skills/figma-to-feature/SKILL.md b/.claude/skills/figma-to-feature/SKILL.md index 4d39a093..dd48c8dd 100644 --- a/.claude/skills/figma-to-feature/SKILL.md +++ b/.claude/skills/figma-to-feature/SKILL.md @@ -24,17 +24,36 @@ description: وقتی کاربر یک لینک figma.com/design با node-id م - توکن‌های فیگما را با mapping.md به متغیرهای واقعی پروژه نگاشت کن. ## بخش ۲ — تحلیل و تأیید (قبل از کدنویسی) -- کدبیس را بگرد: کدام کامپوننت‌ها از قبل هستند و باید reuse شوند؟ -- یک جدول بده: | مورد | فرانت/بک | موجود / توسعه / جدید | دلیل | + +**هر صفحه‌ای که می‌رسد، اول هر دو لایه را کامل audit کن — بک‌اند و فرانت‌اند — قبل از هر کدی.** + +### گام ۲.۱ — audit بک‌اند +- کل `src//Controller/` و مدل‌ها را بگرد. +- برای هر نیاز داده‌ی صفحه مشخص کن: کدام اندپوینت/مدل **از قبل هست**؟ کدام **ادیت/توسعه** می‌خواهد؟ کدام **جدید** لازم است؟ + +### گام ۲.۲ — audit فرانت‌اند +- `assets/admin/components/ui/`، `pages/`، `hooks/`، `stores/`، `types/` را بگرد. +- برای هر المان صفحه مشخص کن: کدام کامپوننت/hook/type **موجود** است و reuse می‌شود؟ کدام **ادیت** می‌شود؟ کدام **جدید** ساخته می‌شود؟ + +### گام ۲.۳ — جدول جمع‌بندی +یک جدول بده: | مورد | فرانت/بک | **موجود / ادیت / جدید** | مسیر فایل | دلیل | - بخش Frontend: کامپوننت‌ها، state، فرم، ولیدیشن، روت - بخش Backend: مدل، اندپوینت (متد+مسیر+payload+response)، auth، مایگریشن - بخش مبهم‌ها: هر چیزی که از دیزاین معلوم نیست (empty state، خطا، لودینگ) -- منتظر تأیید من بمان. -## بخش ۳ — پیاده‌سازی +### گام ۲.۴ — نوشتن TODO (الزامی) +- بعد از جدول، یک TODO مرحله‌به‌مرحله بنویس (با ابزار TodoWrite). +- ترتیب: اول بک‌اند (مدل → مایگریشن → اندپوینت → تست بک)، بعد فرانت (type → hook/fetch → کامپوننت → روت → تست فرانت)، آخر تطبیق بصری. +- هر آیتم TODO دقیقاً به یک ردیف جدول وصل باشد. آیتم بدون مسیر فایل ممنوع. + +**منتظر تأیید من بمان. بدون تأیید جدول + TODO، کد ننویس.** + +## بخش ۳ — پیاده‌سازی (مرحله‌به‌مرحله طبق TODO) +- دقیقاً از روی TODO پیش برو؛ آیتم‌ها را یکی‌یکی `in_progress` → `completed` کن. چند آیتم را با هم نپَر. - طبق مسیرها و قراردادهای CLAUDE.md. +- بعد از هر آیتم بک‌اند، تست همان بخش را اجرا کن؛ سبز نشد، جلو نرو. - در آخر: خروجی را با اسکرین‌شات فیگما مقایسه کن و اختلاف‌ها را اصلاح کن. -- تست‌ها را اجرا کن و خروجی سبز را نشان بده. +- تست‌ها را اجرا کن و خروجی سبز را نشان بده. تا کل TODO سبز نشود، تسک تمام نیست. ## قواعد الزامی — بدون استثنا