bidi-guard protects your code. raqeeb protects your UI. Scan HTML/CSS for Arabic RTL layout bugs before your users find them.
24 checks · 8 categories · RTL Score
Automatic Arabic layout quality testing
$pip install raqeeb
The Problem
Your Arabic UI is broken.
Every Arabic web developer fights the same RTL bugs. Manually. Every time. These are the issues hiding in your codebase right now.
←→
Wrong Direction
Missing dir="rtl" on the html tag. The entire page renders left-to-right. Arabic text looks scrambled.
📈
Broken CSS
margin-left, padding-right, text-align: left. Physical properties that assume LTR. They all break in RTL.
🔨
Overflow Issues
Fixed pixel widths that work for English but overflow with Arabic. Characters are wider, words are longer.
A
Missing Fonts
font-family stacks without Arabic fallbacks. Your beautiful typography falls back to system defaults.
✍
Inaccessible Forms
Input fields without dir attributes. Users type Arabic and the cursor jumps to the wrong side.
👁
Mixed Content
English text inside Arabic paragraphs without bidi isolation. Numbers, links, and brands display backwards.
24 Checks
Eight categories. Every RTL bug covered.
raqeeb checks your HTML and CSS for the most common Arabic layout issues, from missing direction attributes to tight line-heights that clip diacritics.
placeholder_latin — Latin placeholder in Arabic form
alt_text_missing_arabic — English alt text
meta_description_not_arabic — English meta desc
Accessibility
2 checks
input_direction — input without dir attribute
table_direction — table without dir attribute
WCAG / A11y
2 checks
aria_labels_not_arabic — English aria-labels on Arabic page
button_text_not_arabic — English button text on Arabic page
Layout Edge Cases
4 checks
scrollbar_direction — scroll on wrong side in RTL
flexbox_rtl — flex-direction: row reverses in RTL
absolute_positioning — left/right instead of inset-inline
text_overflow_ellipsis — ellipsis on wrong side in RTL
RTL Score
A score for your Arabic readiness.
raqeeb report gives you a 0-100 score based on how many checks pass. Category breakdowns show exactly where to focus.
80
Direction — 3/3 passed
CSS Layout — 3/4 passed
Text Rendering — 1/3 passed
Typography — 3/3 passed
Content — 3/3 passed
Accessibility — 1/2 passed
In Action
Scan. Score. Fix.
Commands
6 commands. Zero config.
scan
Find RTL issues in HTML/CSS files. Rich table output with severity, line numbers, and code snippets.
url
Fetch a live URL and run all checks against it. Works with any public page.
report
Full RTL quality report with score (0-100), category breakdown, and top issues to fix first.
fix
Auto-fix common issues. Adds dir="rtl", lang="ar", replaces physical CSS with logical. Use --yes to skip prompt.
explain
List all 24 checks grouped by category with descriptions and severity levels.
init
Generate a GitHub Actions workflow for CI integration. Use --write to create the file directly.
Get Started
Four lines to protect your Arabic UI.
# Install$ pip install raqeeb# Scan your project$ raqeeb scan .# Scan a live URL$ raqeeb url https://example.com# Get your RTL score$ raqeeb report .# Auto-fix common issues$ raqeeb fix . --yes# Explain all checks$ raqeeb explain# Set up CI$ raqeeb init --write
CI Integration
Catch RTL bugs in every pull request.
Add raqeeb to your GitHub Actions workflow. Fail the build when RTL issues are found.