Moodle is first and foremost English oriented and by that it's also LTR oriented.
In most parts there's no issue here, but only when the need to use any of the RTL languages arises, some blind spots are reveled.
Recent examples:
https://tracker.moodle.org/browse/MDL-51948
https://tracker.moodle.org/browse/MDL-45227
Since I need to support a multi-language multi-directional site I need to make sure everything works the same way for both directions, and I came across what I'd consider to be another blind spot.
Along the CSS files you can find classes that are called (or contain the words) "left", "right".
As you can figure out at this point, any development for RTL sites will requires the use of "left" class for the right side and vise versa.
I propose adding a new set of classes with names that rely on different logic.
For example, here's what I use in my code.
.dir-ltr .float_start, .dir-rtl .float_end { float: left; }
.dir-ltr .float_end, .dir-rtl .float_start { float: right; }
.dir-ltr .align_start, .dir-rtl .align_end { text-align: left; }
.dir-ltr .align_end, .dir-rtl .align_start { text-align: right; }
.dir-ltr .direction_start, .dir-rtl .direction_end { direction: ltr; }
.dir-ltr .direction_end, .dir-rtl .direction_start { direction: rtl; }
By changing the supposedly "fixed" left/right value into a more relative term (start/end) the logic of the code does not rely anymore on the left-to-right approach.