Hebrew and RTL: what breaks and how to fix it
The basics
Declare language and direction at the document level. From there, use logical properties — start and end instead of left and right — for margins, borders and position. Every place left with explicit left is a future bug in the second version of the site.
Directional icons, like arrows, should flip. Non-directional ones, like a play symbol, shouldn't.
Mixed text
A line containing Hebrew, English and numbers is where direction gets confused. Punctuation at the end of a sentence jumps, version numbers flip, and web addresses break.
The fix is isolation: wrap a foreign or code segment in an element that declares its direction. That solves most cases without tricks.
Phone numbers, identifiers and technical strings are best displayed as explicit left-to-right, even inside a Hebrew sentence.
What else to check
Horizontal scroll and sliders, tables with numbered columns, charts whose axis should flip, and export to files — especially PDF, where Hebrew support often fails at the font level rather than the code level.
Going deeper
Test the system in both languages on every release, not only in Hebrew. RTL issues enter through external components tested in one direction only, so it's worth choosing libraries that declare support — and wrapping the rest in a layer of your own that fixes behaviour in one place.