M Majid DS mds
GitHub

Guides

Demo

Every component on one page — the free Flux UI set plus the whole mds layer, in English.

This is the workbench demo, rendered through Blade at build time like every other preview in these docs. Everything on it is live: open the modals, press ⌘K, type in the composer. For the kit in the language it is designed for, see the RTL demo.

The whole kit follows one config flag
config('mds.persian_digits') is off on this page, so every component speaks English: Latin digits and separators, %, English unit labels, transliterated Jalali month names, Out of stock, 159 KB. The only Persian left comes from the digit and money directives (@fa, @faNum, @toman, @rial), which are Persian by definition — @jalali and every component follow the config; reach for mds:price when money should too.
Typography — flux:heading / text / link / separator
Large heading — Vazirmatn
Medium heading
Regular heading
A subheading to explain a section

Body text with an inline link and Persian numerals straight from the @toman directive: ۲٬۵۰۰٬۰۰۰ تومان — and from @jalali: 29 Mordad 1405 (both are Persian by definition, whatever the page locale).

or

Vertical separator:

Sign in

Sign up

Buttons — flux:button
Badges — flux:badge
Default
Cancelled
Pending
Ships today
Delivered
Original
Shipping
Featured
Subscription
Offer
Flash
Small
Large
Rounded with icon
Solid
Flash sale
Avatars & icons — flux:avatar / icon
MM
SR
FK
MM
3+
Forms — flux:input / textarea / select / checkbox / radio / switch / otp
Search
⌘K
Mobile number A verification code will be sent to this number.
Password
Referral code
Email
Product image
Review
Province Verification code
Notifications
Order status An SMS at every shipping step
Discounts and offers
Weekly newsletter
Shipping method
Courier Same-day delivery
Priority post 2 to 4 business days
In-store pickup
View List Grid Table In stock only Free shipping
Callouts — flux:callout
Payment is awaiting confirmation
The bank will report the result in a moment.
Order placed successfully
Tracking code: MDS-140529
Only 2 left in stock
Payment failed
Any amount charged will be returned to your account within 72 hours.
Tooltip, menu, modal and toast — flux:tooltip / dropdown / modal / toast
Add to favorites
Quick search ⌘K
Newest
Cheapest
Best selling
Delete this order?

This cannot be undone and your order will be cancelled entirely.

Cart

AirSound Pro wireless headphones

1

Total:

1,890,000 Toman
Command palette — mds:command

An open version of the Command component (Pro-only in Flux) — Persian search, keyboard navigation and a ⌘K shortcut.

Inline:

Chat with support
No results found.

In a modal with the ⌘K shortcut:

No results found.
Color picker — mds:color-picker

An open version of the Color Picker component (Pro-only in Flux) — a saturation/brightness canvas, hue and alpha sliders, a swatch palette, an eyedropper and six output formats.

Brand color
Background color (rgba)
Output format: rgba, with an alpha slider
Custom swatches

Button mode:

File upload — mds:file-upload

An open version of the File Upload component (Pro-only in Flux) — drag and drop, click to choose, a Livewire upload progress bar, and a file list with localized sizes.

Upload images
You can select several files at once.
Profile_pic.jpg
159 KB
sales-contract.pdf
2.3 MB
archive.zip
This file is larger than 10 MB.
Compact (inline)
With a progress bar
Disabled
With a validation error
Custom uploader (avatar)

Any HTML inside <mds:file-upload> gets the full upload behavior; style the states with in-data-dragging: and in-data-loading:.

Chat & prompt input — mds:composer

An open version of the Composer component (Pro-only in Flux) — a multi-line input that grows with the text, an action bar around it, Ctrl/⌘ + Enter to send, and a character counter.

A prompt with an action bar
Message
Press Ctrl + Enter to send.
0 / 500
With an attachment preview (the header slot)
galaxy-phone.jpg
159 KB
A conversation, Enter to send
Hi! When is my order arriving?
Your parcel arrives on:
Message
Form variant (variant="input") and error states
Support message
You will get a reply within 24 hours.
With a validation error
Disabled
Link preview — mds:preview-card

A card previewing a link's destination — it opens on hover or keyboard focus, and the link itself still navigates on click.

The profile behind an @mention

This kit is maintained by the team at @majid_ds .

A media preview

Our next offsite is at the Coastal House next month.

The card only opens on hover or focus — never on touch — so keep anything essential on the linked page itself. Placement is logical (side/align take start/end) and mirrors automatically on RTL pages.

Timeline — mds:timeline

An open version of the Timeline component (Pro-only in Flux) — vertical and horizontal, step states, colored indicators and full-width blocks. The rail follows the reading direction.

Default
  1. Order placed · 4 days ago
  2. Payment confirmed
    Online
  3. Delivered ·
Large (size="lg") with numbered steps
  1. 1
    Cart

    Review the items and finalize quantities.

  2. 2
    Address & delivery slot

    Pick the recipient address and a delivery window.

  3. 3
    Payment

    Pay online or on delivery.

Horizontal + step state
  1. Paid

    31 Mordad 1405

  2. Packed

    1 Shahrivar 1405

  3. Shipping

    The courier is on the way

  4. Delivered to customer

    By tomorrow

Indicator alignment with long text (align)
Start — start
  1. 1
    Submit documents

    Upload a photo of your national ID and your latest academic certificate so our team can review your file.

  2. 2
    Final review
First text line — baseline
  1. 1
    Submit documents

    Upload a photo of your national ID and your latest academic certificate so our team can review your file.

  2. 2
    Final review
Center (default) — center
  1. 1
    Submit documents

    Upload a photo of your national ID and your latest academic certificate so our team can review your file.

  2. 2
    Final review
End — end
  1. 1
    Submit documents

    Upload a photo of your national ID and your latest academic certificate so our team can review your file.

  2. 2
    Final review
Colored indicator, bare variant and block
  1. Deployment failed
  2. Warning raised
  3. Released

    The indicator sits on the first line of the large heading (align="baseline").

  1. Mahdi left a comment · 30 Mordad 1405
  2. Support replied

    Your parcel ships from the Tehran warehouse today.

  3. Ticket closed
Charts — mds:chart

Monochrome dashboard charts, server-rendered as SVG with no library — an open take on the Chart component (Pro-only in Flux). Persian digits; the funnel and heatmap are RTL-native.

Monthly revenue
48,920 k Toman +14.2%
Rounded sparkline Last six months
Monthly sales Spline
84 k orders
0 25 50 75 100 Far Ord Kho Tir Mor Sha
Dashed: last year Peak in Mordad
Seasonal sales 3 layers
160 billion
0 50 100 150 200 Spring Summer Fall Winter
Sales funnel 4 stages
24% conversion
Visits 100
Cart 68
Payment 42
Purchase 24
Category share Donut
100% Total sales
Mobile Home appliances Books Other
4 categories Share of sales
Customer satisfaction Gauge
84% performance index
84 Target met
Ops targets Benchmark
On-time delivery 82% / 75%
Response rate 65% / 80%
Uptime 95% / 90%
Marker: target 3 metrics
Seller score Radar
85 of 100
Shipping speed Quality Price Response rate Packaging
Order activity 14 weeks
807 orders
Tir Mor Sha
Hover tiles for details
One column per week Darker: more

Every chart's ink is currentColor; a single text-accent class recolors the whole thing.

Icons — mds:icon

Hugeicons replaces heroicons across every mds component. The free Stroke Rounded set (6,200 icons) ships with the package; heroicon names still work through an alias map.

Hugeicons names
shopping-cart-01
truck-delivery
discount-tag-01
wallet-01
store-01
gift
coins-01
delivery-box-01
heroicon names (alias map)
magnifying-glass → search-01
shopping-bag → shopping-bag
credit-card → credit-card
exclamation-triangle → alert-02
heart → heart
map-pin → map-pin
trash → delete-02
user → user
Size with Tailwind classes
Stroke width
Color & accessibility
Pro styles
Only the Stroke Rounded style is free. For the other eight, register your own licensed export in config('mds.icons.sets') — this package ships no Pro files. Set config('mds.icons.default') = 'flux' to go back to heroicons everywhere.
Breadcrumbs — flux:breadcrumbs
MDS-140529
Table & pagination — flux:table / pagination + mds components
Product
Status
Amount
Samsung Galaxy S25
Delivered
2 days ago
13%
48,900,000
42,500,000 Toman
AirSound Pro wireless headphones
Shipping
1 day ago
1,890,000 Toman
One Hundred Years of Solitude
Awaiting payment
6 hours ago
30%
350,000
245,000 Toman
Fit Band 8 smartwatch
Cancelled
2 hours ago
3,200,000 Toman
Showing 9 to 12 of 48 results
Progress — flux:progress

Profile completion — 35%

Flash sale capacity — 70%

Satisfaction score — 92%

Skeleton — flux:skeleton
Rating — mds:rating

Leave a rating:

Quantity — mds:quantity
2
1
3
Price — mds:price / discount-badge
22%
3,200,000
2,500,000 Toman
890,000 Toman
14,500,000 Rial
20%
1,500,000
1,200,000 Toman
10% 25% 20%
Digit input — mds:input

flux:input, except Persian and Arabic digits are rewritten to Latin as they are typed or pasted — the value that reaches the server is always the machine form.

Mobile number Type with any keyboard; the Latin value is stored.
National ID Ten digits; the check digit is verified server-side by the NationalId rule.
Card number 16 digits; the grouping is display-only and the BankCard rule ignores the spaces.
Sheba (IBAN) IR and 24 digits; the grouping is display-only and the Sheba rule ignores the spaces.
Verification code
Address
Checkout steps — mds:stepper
Countdown — mds:countdown

Flash deal:

07 hours
42 min
00 sec
02 days
05 hours
00 min
00 sec
This deal has ended
Jalali date — mds:jalali-date
Today:
Numeric:
Order placed:
With the Blade directives (always Persian): 29 Mordad 1405۲٬۵۰۰٬۰۰۰ تومان
Product card — mds:product-card
Ships today
Samsung Galaxy S25, 256 GB

Samsung Galaxy S25, 256 GB

13%
48,900,000
42,500,000 Toman

AirSound Pro wireless headphones

1,890,000 Toman
Best seller
One Hundred Years of Solitude by Gabriel García Márquez

One Hundred Years of Solitude by Gabriel García Márquez

30%
350,000
245,000 Toman
Your cart is empty

You have not added anything to your cart yet. Start with the flash deals.

Related