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

حالت نمایش

پالت رنگی

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

Admin Kit

قالب پنل مدیریت: پوسته‌ی واکنش‌گرا (سایدبار + نوار بالا)، سربرگ صفحه، کارت‌های آمار، نوار ابزار جدول و صفحه‌ی ورود. فقط CSS و HTML است و جاوااسکریپت جدیدی ندارد؛ جدول، فرم و Schema همان ماژول‌های قبلی‌اند. ۵۷ صفحهٔ آماده در templates/admin/ و چهار مجموعهٔ مستقل با شخصیت متفاوت در templates/crm، finance، shop و projects (هرکدام ۶ صفحه) هست.

کد
<div ui="admin">
  <aside id="admin-nav" popover aria-label="منوی اصلی">
    <a ui="brand" href="/">پنل</a>
    <nav ui="sidebar-nav"><ul><li><a href="/" aria-current="page">داشبورد</a></li></ul></nav>
  </aside>
  <header>
    <button ui="icon ghost" data-admin-menu popovertarget="admin-nav" aria-label="باز کردن منو"><bana-icon name="menu"></bana-icon></button>
    <span ui="spacer"></span>
  </header>
  <main>
    <div ui="page-header"><div><h1>کاربران</h1><p>توضیح کوتاه</p></div><div ui="actions"><a ui="primary button" href="/new">جدید</a></div></div>
    <dl ui="stats"><div ui="stat"><dt>کاربران فعال</dt><dd>۱٬۲۸۴</dd><small data-trend="up">۱۲٪ بیشتر</small></div></dl>
    <section ui="card"><h2>فهرست</h2>…</section>
  </main>
</div>
صفتکار
ui="admin"پوسته: از ۶۰rem به بالا سایدبار ثابت در ستون کناری؛ در صفحه‌ی باریک، aside[popover] با دکمه‌ی popovertarget باز می‌شود (بدون JavaScript، با بستن با Escape و کلیک بیرون). پهنا با --bana-admin-sidebar.
ui="page-header"عنوان، توضیح، مسیر (breadcrumb) و ui="actions".
ui="stats" / ui="stat"شبکه‌ی خودکار کارت آمار؛ data-trend="up|down" روی small.
ui="toolbar"نوار فیلتر بالای جدول.
ui="auth"صفحه‌ی تک‌کارتی برای ورود/بازیابی.

Admin Kit کامل: ۵۱ صفحه

بسته‌ی ادمین جداست تا بسته‌ی اصلی سبک بماند: bana-admin.min.css (حدود ۶٫۵ کیلوبایت gzip) و bana-admin.js (حدود ۲۶ کیلوبایت gzip، بالای bana.js). صفحه‌ها در templates/admin هستند و با npm run admin ساخته می‌شوند.

سبک‌ها و رنگ منو

ظاهر کل پنل با دو صفت روی <html> عوض می‌شود؛ هر دو فقط توکن‌های CSS را تغییر می‌دهند و در پنل «ظاهر» هر صفحه هم انتخاب‌شدنی‌اند (و در مرورگر یادآوری می‌شوند).

صفتمقدارها
data-skinflat (تخت، بدون سایه) · soft (گوشه‌گرد و شناور) · bold (پررنگ) · mono (تک‌رنگ و گوشه‌دار) · glass (شیشه‌ای). بدون مقدار = کلاسیک.
data-sidebardark یا brand (رنگ برند). بدون مقدار = هم‌رنگ صفحه.
data-palette · data-theme · data-densityهمان توکن‌های Bana (۱۰ پالت، روشن/تیره، سه تراکم).

مجموعه‌های قالب

پوشهموضوعظاهر پیش‌فرضصفحه‌ها
templates/crmمشتری‌یار — فروش و ارتباط با مشتریتخت + منوی تیره + فیروزه‌ای۲۱ صفحه: نمای کلی، سرنخ‌ها، معامله‌ها (کانبان)، پیش‌فاکتور و سازندهٔ آن، پیش‌بینی فروش، مشتریان، مخاطبین، شرکت‌ها، تقویم، ایمیل، کمپین، تیکت و جزئیات، عملکرد تیم، مراحل قیف، تنظیمات و…
templates/financeپول‌نما — مالی شخصینرم + زمردی۲۱ صفحه: خلاصه، تراکنش‌ها، انتقال، کارت‌ها، ارز و طلا، بودجه، دسته‌ها، هدف‌های پس‌انداز، اشتراک‌ها، قبض‌ها، فاکتور، سرمایه‌گذاری، وام، مالیات، گزارش ماهانه، امنیت، تنظیمات و راهنما
templates/shopبازارچه — مدیریت فروشگاهپررنگ + منوی رنگی + انار۲۱ صفحه: داشبورد، سفارش و جزئیات، ثبت سفارش، سبد رهاشده، مرجوعی، پرداخت، محصولات، دسته‌ها، انبار، نظرها، کد تخفیف، بنر، ارسال، مشتریان، کارکنان، گزارش فروش، تنظیمات و…
templates/projectsکارگاه — مدیریت پروژهتک‌رنگ + مرکب۲۱ صفحه: نمای کلی، نقشهٔ راه، زمان‌بندی، نقاط عطف، تقویم، انتشارها، بک‌لاگ، تخته، اسپرینت، جزئیات کار، ثبت زمان، بودجه، ریسک‌ها، گزارش‌ها، جلسه‌ها، بازاندیشی، دسترسی‌ها، یکپارچگی‌ها و…

هر مجموعه حالا ۲۱ صفحه و منوی گروه‌بندی‌شده دارد (۸۴ صفحه در چهار مجموعه). اجزای تازه: بنر .ad-hero، آمار با آیکن .ad-stat-i، کاشی‌ها .ad-tiles، چیپ‌های فیلتر [data-chips] و نمودار گانت .ad-gantt.

پنج صفحهٔ تازهٔ کیت اصلی هم اضافه شد: تنظیمات و صورتحساب، مرکز اعلان‌ها، ویزارد چندمرحله‌ای (data-wizard)، مدیریت فایل و نقش‌ها و دسترسی‌ها. دکمه‌های data-toast="success|info|warning|danger" (با data-toast-message) اعلان نشان می‌دهند.

این‌ها قالب‌اند، نه برنامه.داده‌ها نمونه‌اند و فرم‌ها به جایی ارسال نمی‌شوند. ماتریس دسترسی و هر بررسی دیگر باید در سرور اعمال شود.
معادل ویژگی‌های AdminLTE
در AdminLTEدر Banaوضعیت
داشبورد ۱، ۲، ۳index، dashboard2، dashboard3کامل
Info box، Small box، ابزارهای کارتui="info-box"، ui="small-box"، data-card-toolکامل
چیدمان: بالا، کادربندی، ثابت، جمع‌شدهdata-layout و data-collapsedکامل (چهار صفحه‌ی نمونه)
نمودارها (ChartJS، Flot، Inline)data-chart — ۹ نوع SVG خالصجایگزین؛ نه نسخه‌ی ChartJS (بدون بزرگ‌نمایی، تقریب و انیمیشن)
UI: دکمه، آیکن، لغزنده، مودال، تب، Timeline، Ribbonui-* (۸ صفحه)کامل
فرم‌ها: عمومی، پیشرفته، ویرایشگر، اعتبارسنجیforms-* (۴ صفحه)کامل؛ ویرایشگر سبک است (نه Summernote)
Select2، Datepicker، Dual listbox، Dropzonedata-combobox، data-datepicker و data-timepicker (شمسی)، ui="transfer"، ui="upload"معادل؛ بدون انتخاب رنگ، ماسک ورودی و Slider دوسر
جدول‌ها: ساده، DataTables، jsGridui="data-table"جست‌وجو/مرتب‌سازی/صفحه‌بندی؛ بدون ویرایش درجا و گروه‌بندی
تقویم، گالری، کانبان، ایمیلdata-calendar، data-lightbox، data-kanban، ui="mailbox"تقویم شمسی با تعطیلات ثابت؛ تعطیلات قمری نیست
فاکتور، پروفایل، فروشگاه، پروژه‌ها، مخاطبین، FAQ، تماس، جست‌وجوصفحه‌های هم‌نامکامل (داده‌ی نمونه)
ورود، ثبت‌نام، قفل، بازیابی، ۴۰۴، ۵۰۰، خالی، شروعصفحه‌های هم‌نامکامل (احراز هویت واقعی با سرور شماست)
پیام و اعلان نوار بالا، منوی کاربر، نوار کنترل، تمام‌صفحهpopover بومی و ui="control"کامل
Flot زنده، jVectorMap، Sparkline جی‌کوئری، Toastr، SweetAlert—ساخته نشد؛ Toast و Dialog خود Bana جایگزین است
کد
npm run serve:admin      # http://localhost:4173/templates/admin/index.html
# a real demo: static pages + /api/users behind the Bana guard (CSRF, Idempotency-Key, Schema validation, strict CSP)
این‌ها قالب‌اند، نه یک برنامه‌ی کامل.داده‌ی کاربران ساختگی است، صفحه‌ی ورود احراز هویتی انجام نمی‌دهد و سرور نمونه (serve-admin.mjs) فقط برای توسعه است (حافظه‌ی داخل پردازش، کوکی بدون Secure). نمودار، Tab چندصفحه‌ای و ساختار نقش/دسترسی در این نسخه نیست؛ مجوزدهی باید در سرور شما باشد.

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