v0.1 beta · free and open source

Build for the Gulf.In both directions.

The skills, formats and starter behind products that ship in Arabic and English. Install once and your agent builds right to left on the first pass.

Read the docs
Works with the tools your team already ships with
Payment summary
Amount due
AED 1,234.50
Due date18 Feb 2026
Hijri1 Ramadan 1447 AH
You have 3 items in this order
Mobile for the receipt
+971050 123 4567stays LTR
Pay now

One component, flipping in place. The phone number stays left to right in Arabic, as it should.

skills/skills for Claude Code and Cursor
@dualkit/formatGulf formats
package.jsondependencies
vitesttests passing
Skills

Your agent writes React.
Dualkit teaches it Arabic.

Four skills for Claude Code and Cursor that fix the bugs every model ships in Arabic. Phone numbers stop reversing, dates stop landing a day out, and digits stay in one system across the screen.

loading dualkit-rtl-layout

Measured against a baseline

The same checkout screen, built three times without the skills and three times with them.

Rendered live by your browsernot isolated

مثال: 050 123 4567

Phone numbers stay in order in Arabic0/3
Dates pinned to a time zone1/3
One digit system per screen1/3
Arabic leading and tracking0/3
EnglishAED 1,234.50
Arabic١٬٢٣٤٫٥٠ د.إ
RiyalSAR 1,234.50
ريال1,234.50 ر.س
Format

Gulf formats,
solved in 12 KB.

Money in AED and SAR, Umm al-Qura dates, Arabic numerals, UAE phone numbers, Emirates ID and Gulf IBANs, in one library with no dependencies. Every parser reads Arabic digits the way people type them.

Starter Coming next

Tokens in git.
Figma and code follow.

A bilingual design system starter, right to left from the first commit. One token file generates the Figma library and the React components, and AGENTS.md tells every agent how to build with them.

tokens.jsonsource
1{
2 "radius": {
3 "card": 24
4 },
5 "direction": "rtl"
6}
Figmasynced
Card · RTLr 24
ملخص الدفعالمبلغ المستحق1,234.50 د.إإتمام الدفع
Codesynced
1<Card dir="rtl">
2 <Amount value={1234.5} />
3 <Button>Pay now</Button>
4</Card>
5
6// radius-card: 24px
Drag the radius, flip the direction
Radius
08162432
24
Direction
AGENTS.md in sync

Ship in both
directions today.

Free and open source, for the agents you already use.

Read the docs