پرش به محتوا
بناBana UI

حالت نمایش

پالت رنگی

با ↑ ↓ جابه‌جا شوید و Enter را بزنید. Esc برای بستن.

Design Tokenها

همه فاصله‌ها، گوشه‌ها، سایه‌ها و حرکت‌ها از Token می‌آیند؛ شبکه پایه ۴ پیکسل است.

فاصله‌گذاری

--bana-space-1
--bana-space-2
--bana-space-3
--bana-space-4
--bana-space-5
--bana-space-6
--bana-space-8
--bana-space-10
--bana-space-12
--bana-space-16
کد
<div ui="stack tight" class="ltr">
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-1</code><span class="scale-box" style="inline-size:var(--bana-space-1);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-2</code><span class="scale-box" style="inline-size:var(--bana-space-2);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-3</code><span class="scale-box" style="inline-size:var(--bana-space-3);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-4</code><span class="scale-box" style="inline-size:var(--bana-space-4);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-5</code><span class="scale-box" style="inline-size:var(--bana-space-5);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-6</code><span class="scale-box" style="inline-size:var(--bana-space-6);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-8</code><span class="scale-box" style="inline-size:var(--bana-space-8);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-10</code><span class="scale-box" style="inline-size:var(--bana-space-10);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-12</code><span class="scale-box" style="inline-size:var(--bana-space-12);min-block-size:1.5rem;padding:0"></span></div>
  <div style="display:flex;align-items:center;gap:1rem"><code style="inline-size:7rem">--bana-space-16</code><span class="scale-box" style="inline-size:var(--bana-space-16);min-block-size:1.5rem;padding:0"></span></div>
</div>

گوشه‌ها و سایه‌ها

xs
sm
md
lg
xl
xs
sm
md
lg
xl
کد
<div ui="cluster" style="gap:1.5rem">
  <div class="scale-box" style="inline-size:5rem;border-radius:var(--bana-radius-xs)">xs</div>
  <div class="scale-box" style="inline-size:5rem;border-radius:var(--bana-radius-sm)">sm</div>
  <div class="scale-box" style="inline-size:5rem;border-radius:var(--bana-radius-md)">md</div>
  <div class="scale-box" style="inline-size:5rem;border-radius:var(--bana-radius-lg)">lg</div>
  <div class="scale-box" style="inline-size:5rem;border-radius:var(--bana-radius-xl)">xl</div>
</div>
<div ui="cluster" style="gap:1.5rem;margin-block-start:1.5rem">
  <div style="inline-size:5rem;block-size:4rem;display:grid;place-items:center;border-radius:var(--bana-radius-md);background:var(--bana-surface-raised);box-shadow:var(--bana-shadow-xs);font-size:var(--bana-text-xs)">xs</div>
  <div style="inline-size:5rem;block-size:4rem;display:grid;place-items:center;border-radius:var(--bana-radius-md);background:var(--bana-surface-raised);box-shadow:var(--bana-shadow-sm);font-size:var(--bana-text-xs)">sm</div>
  <div style="inline-size:5rem;block-size:4rem;display:grid;place-items:center;border-radius:var(--bana-radius-md);background:var(--bana-surface-raised);box-shadow:var(--bana-shadow-md);font-size:var(--bana-text-xs)">md</div>
  <div style="inline-size:5rem;block-size:4rem;display:grid;place-items:center;border-radius:var(--bana-radius-md);background:var(--bana-surface-raised);box-shadow:var(--bana-shadow-lg);font-size:var(--bana-text-xs)">lg</div>
  <div style="inline-size:5rem;block-size:4rem;display:grid;place-items:center;border-radius:var(--bana-radius-md);background:var(--bana-surface-raised);box-shadow:var(--bana-shadow-xl);font-size:var(--bana-text-xs)">xl</div>
</div>

تایپوگرافی

مقیاس سیال (clamp)
عنوان بسیار بزرگ
عنوان بزرگ
عنوان متوسط
زیرعنوان
متن عادی با ارتفاع خط ۱٫۷ که برای خط فارسی مناسب است.
متن کوچک و توضیحی
کد
<div ui="stack tight">
  <div style="font-size:var(--bana-text-4xl);font-weight:700">عنوان بسیار بزرگ</div>
  <div style="font-size:var(--bana-text-3xl);font-weight:700">عنوان بزرگ</div>
  <div style="font-size:var(--bana-text-2xl);font-weight:600">عنوان متوسط</div>
  <div style="font-size:var(--bana-text-xl);font-weight:600">زیرعنوان</div>
  <div style="font-size:var(--bana-text-md)">متن عادی با ارتفاع خط ۱٫۷ که برای خط فارسی مناسب است.</div>
  <div style="font-size:var(--bana-text-sm);color:var(--bana-text-secondary)">متن کوچک و توضیحی</div>
</div>

فونت پیش‌فرض Vazirmatn است (SIL OFL) و فایل آن در dist/fonts/ همراه CSS می‌آید؛ سپس Inter و فونت سیستم. اگر CSS را از جای دیگری سرو می‌کنید، پوشه‌ی fonts/ را کنار آن بگذارید.

حرکت

مدت‌ها: fast 120ms، base 200ms، slow 320ms. منحنی‌ها: ease-out و ease-spring (با linear()). در prefers-reduced-motion همه مدت‌ها به ۰ می‌رسند.

ویرایش این صفحه در GitHub