پرتوپرتو

اصول

چرا پرتو این‌گونه است — چهار اصل بنیادین که بقیه‌ی سیستم از آن‌ها نتیجه می‌شود

معرفی

پرتو یک کتابخانه‌ی UI عمومی نیست. چهار اصل زیر تصمیم‌های بقیه‌ی سیستم را توضیح می‌دهند: اینکه چرا فاصله‌گذاری منطقی است نه فیزیکی، چرا ارقام با فونت فارسی می‌شوند نه با جاوااسکریپت، و چرا کامپوننت‌ها اصطلاح‌های دامنه را در خودشان دارند.

این بخش یک‌بار خوانده می‌شود، نه به‌عنوان مرجع. اگر دنبال نام کلاس یا مقدار توکن هستید، به پایه‌ها بروید.


راهنمای انتخاب


نکات مشترک

اصل‌ها در این پروژه توصیه نیستند؛ هر کدام جایی اجرا می‌شوند:

اصلکجا اجرا می‌شود
RTL منطقیقانون ESLint parto/no-physical-css-propertiesml/mr/pl/pr/left/right خطا می‌دهند
بدون رنگ hardcodeparto/no-hardcoded-colors و parto/no-palette-colors؛ به‌علاوه‌ی گیت کنتراست که هر دو تم را می‌سنجد
کنتراست خواناparto/no-low-contrast-text و parto/no-muted-readable-text — دومی text-muted را هم می‌گیرد، که سطح غیرفعال است
تایپوگرافی فارسیparto/no-tracking-on-persian-text و parto/no-offscale-text — letter-spacing خط فارسی را می‌شکند
قطعه‌کدهای مستنداتگیت check-mdx-classnames همین قوانین را روی بلوک‌های کد داخل صفحات داک اجرا می‌کند

اگر قانونی سر راه‌تان است

قانون را دور نزنید؛ اول مطمئن شوید مورد شما واقعاً استثناست. مثلاً text-muted روی یک تصویر تزئینی با aria-hidden خودکار معاف است و نیازی به eslint-disable ندارد. اگر استثنای واقعی است، با یک دلیل مکتوب ساکتش کنید.