К основному содержанию
правило

rtl-right-to-left-i18n-cursorrules — правило Cursor для RTL-вёрстки

Правило Cursor, которое заставляет агента писать CSS и Tailwind по логическим свойствам, а не по left/right. Пригодится, если проект должен работать на арабском, иврите, персидском или урду.

Установить в Cursor · Вручную: положить файлы Все способы и платформы ↓
.cursor/rules/rtl-right-to-left-i18n-cursorrules-prompt-file.mdc
Открыть на GitHub

Что делает rtl-right-to-left-i18n-cursorrules-prompt-file

Правило описывает восемь блоков требований. Логические CSS-свойства вместо физических: margin-inline-start вместо margin-left, inset-inline-start вместо left. То же для Tailwind — ms-4, me-4, ps-4, pe-4, start-0, end-0. Отдельный пункт про React Native: paddingStart вместо paddingLeft.

Дальше идут двунаправленный текст и иконки. Смешанные скрипты правило советует оборачивать в <bdi>, а направленные иконки — стрелки, шевроны, кнопку «назад» — отражать в RTL. Домашняя иконка, настройки и поиск остаются как есть. Строки не хардкодить, числа и даты гнать через Intl.NumberFormat и Intl.DateTimeFormat, на корне ставить dir="auto" или dir="rtl". Карусели, слайдеры, прогресс-бары и свайпы в RTL должны разворачиваться.

Для проверки правило ссылается на rtlify-ai: npx rtlify-ai init ставит правила, npx rtlify-ai check ищет нарушения, npx rtlify-ai fix правит их. Тестировать советует на живом RTL-контенте, а не на отражённом LTR — иначе баги в двунаправленном тексте просто не всплывут. Файл кладётся в .cursor/rules/ с расширением .mdc, поэтому без Cursor он не заработает.

Какие задачи решает

  • перевести физические CSS-свойства в логические без ручного прохода по файлам
  • найти места, где Tailwind-классы ml- и pr- ломают RTL-раскладку
  • обернуть пользовательские имена в <bdi>, чтобы текст не разъезжался
  • развернуть карусели, слайдеры и свайпы при переключении на RTL
  • отразить стрелки и шевроны, не тронув иконки поиска и настроек

Примеры запросов агенту

  • Проверь вёрстку этого компонента на RTL и замени физические свойства на логические
  • Настрой Tailwind-классы в src/components/Card.tsx под RTL
  • Прогони npx rtlify-ai check и почини найденные нарушения

Как установить rtl-right-to-left-i18n-cursorrules-prompt-file

Вручную: положить файлы

.cursor/rules/rtl-right-to-left-i18n-cursorrules-prompt-file.mdc

Во frontmatter: description, globs, alwaysApply

По шагам, с командами для каждой платформы: Cursor rules: файлы .mdc, четыре режима и замена .cursorrules

Вопросы о rtl-right-to-left-i18n-cursorrules-prompt-file

Как установить rtl-right-to-left-i18n-cursorrules в Cursor?

Создайте файл .cursor/rules/rtl-right-to-left-i18n-cursorrules-prompt-file.mdc и вставьте в него содержимое правила. Cursor подхватит его из папки .cursor/rules/.

Что делает это правило?

Задаёт агенту набор требований по RTL: логические CSS-свойства, логические Tailwind-утилиты, <bdi> для смешанного текста, разворот направленных иконок и проверку через rtlify-ai.

Обязателен ли rtlify-ai для работы правила?

Нет, это отдельный инструмент для автоматического поиска и правки нарушений. Правило работает и без него, но тогда проверять RTL придётся вручную.

Исходный текст

rtl-right-to-left-i18n-cursorrules-prompt-file.mdc · CC0-1.0
---
description: "Cursor rules for RTL development with logical CSS properties, Tailwind logical classes, bidirectional text, and automated auditing via rtlify-ai."
globs: **/*
alwaysApply: false
---
# RTL (Right-to-Left) Development Rules

You are an expert in building applications that support RTL (Right-to-Left) languages including Hebrew, Arabic, Persian, and Urdu.

## Core Rules

### 1. Logical CSS Properties
Always use CSS logical properties instead of physical ones:
- `margin-inline-start` not `margin-left`
- `padding-inline-end` not `padding-right`
- `inset-inline-start` not `left`
- `border-inline-start` not `border-left`

### 2. Tailwind CSS Logical Classes
Use logical Tailwind utilities:
- `ms-4` not `ml-4` (margin-start)
- `me-4` not `mr-4` (margin-end)
- `ps-4` not `pl-4` (padding-start)
- `pe-4` not `pr-4` (padding-end)
- `start-0` not `left-0`
- `end-0` not `right-0`

### 3. React Native Logical Properties
Use logical properties in React Native styles:
- `paddingStart` not `paddingLeft`
- `paddingEnd` not `paddingRight`
- `marginStart` not `marginLeft`
- `marginEnd` not `marginRight`

### 4. Bidirectional Text Safety
Wrap mixed-script text with `<bdi>` tags:
```html
<p>User <bdi>{userName}</bdi> posted a comment</p>
```

### 5. Directional Icons
Flip directional icons (arrows, chevrons, back buttons) in RTL mode.
Non-directional icons (home, settings, search) should NOT be flipped.

### 6. Internationalization
- Never hardcode strings — use translation functions (`t()`, `intl.formatMessage()`)
- Use `Intl.NumberFormat` for numbers and currency
- Use `Intl.DateTimeFormat` for dates
- Set `dir="auto"` or `dir="rtl"` on root elements

### 7. RTL-Aware Components
- Carousels, sliders, and progress bars must reverse direction in RTL
- Swipe gestures must reverse in RTL
- Charts and graphs with directional axes must flip

### 8. Testing
- Always test with `dir="rtl"` on the root element
- Verify with actual RTL content, not just flipped LTR

## Automated RTL Auditing

For automated RTL violation detection and fixing, use [rtlify-ai](https://github.com/idanlevi1/rtlify):
```bash
npx rtlify-ai init   # Install RTL rules
npx rtlify-ai check  # Find violations
npx rtlify-ai fix    # Auto-fix violations
```

© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules

Похожие правила IDE

Все правила IDE по теме «Фронтенд и UI» →
internationalization-i18n Mindrally Скилл задаёт агенту правила интернационализации: переводы, форматирование дат и чисел, RTL-раскладка. Пригодится, когда приложение выходит на новые языки. CX Codex +1 978установок experience-lwc-rtl-validate forcedotcom Проверяет Lightning Web Components на поддержку чтения справа налево. Находит физические CSS-свойства, ошибки в разметке и выдаёт отчёт с готовыми исправлениями. CX Codex +1 2 300установок i18n-localization davila7 Скилл для Claude, который помогает вынести строки в файлы переводов, разобраться с локалями и поддержкой RTL. 251установок vue-i18n-skilld skilld-dev Скилл для работы с vue-i18n в Vue 3: подсказывает синтаксис сообщений, плюрализацию, форматы дат и чисел, миграцию на v12. CX Codex +1 391установок i18n-expert daymade Настраивает и проверяет локализацию интерфейса: заменяет строки ключами, сверяет локали и форматирование. Нужен при работе с React, Next.js или Vue. CX Codex +1 2 700установок nuxt-i18n onmax Скилл для ИИ-агента, который помогает настроить локали, маршруты и SEO в Nuxt-приложении через @nuxtjs/i18n. CX Codex +1 589установок

Из того же набора68

solidity-hardhat-cursorrules-prompt-file Правило для Cursor, которое настраивает ИИ-ассистента на разработку смарт-контрактов на Solidity с проверками безопасности и работой через Hardhat. ★ 41 011звёзд репо snowflake-snowpark-dbt-cursorrules-prompt-file Правило для Cursor, которое задаёт агенту контекст по Snowpark Python и dbt с адаптером Snowflake. Пригодится, когда пишете пайплайны трансформаций в этих двух инструментах. ★ 41 011звёзд репо shopify-theme-dev-liquid Правило для Cursor с набором практик по темам Shopify: Liquid, JavaScript, CSS, доступность и производительность. Пригодится, если пишете тему и хотите, чтобы агент держал структуру. ★ 41 011звёзд репо salesforce-apex-cursorrules-prompt-file Правило для Cursor, которое настраивает ИИ на разработку Salesforce на Apex: очередь вместо @future, паттерны GoF и минимум комментариев. ★ 41 011звёзд репо react Правило задаёт агенту Cursor соглашения по React: структура компонентов, хуки, состояние, формы и доступность. Пригодится, когда в проекте много .tsx и .jsx и хочется единый стиль. ★ 41 011звёзд репо react-typescript-nextjs-nodejs-cursorrules-prompt- Правило для Cursor задаёт стиль кода на React, TypeScript, Next.js 14 и Node.js: функциональные компоненты, RORO, минимум use client. ★ 41 011звёзд репо react-styled-components-cursorrules-prompt-file Правило для Cursor, которое задаёт агенту стиль кода на React со styled-components: функциональные компоненты, тема через ThemeProvider, папка styles. ★ 41 011звёзд репо react-query-cursorrules-prompt-file Правило для Cursor, которое задаёт агенту соглашения по React Query: где держать QueryClient, как называть хуки и ключи запросов. ★ 41 011звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой