MAHMOUD ABDELNABY
Content · CLI SCRIPT · 2

Kinetic Typography Subtitle Linter for Arabic Social Ads

Check selected subtitle timing, line length, and wrapping rules for Arabic and English SRT/VTT files. Results are lint suggestions, not a guarantee of readability on every device.

Problem it addresses

Develop a pure Python subtitle validation tool for Arabic and English social video (subtitle_linter.py): 1) Parses SRT and VTT files, 2) Flags subtitles exceeding recommended reading speed (>160 WPM), 3) Checks maximum characters per line (flagging >38 chars on mobile), 4) Detects reversed punctuation marks in Arabic bidirectional text, 5) Outputs an automated correction report.

Who it is for

PRO operating in high-growth e-commerce, digital publishing, and direct-response marketing across Saudi Arabia, UAE, and Egypt.

What is inside

Key files listed in the README repository architecture:

  • docs/arabic-subtitle-best-practices.md
  • examples/bad_subtitles.srt
  • examples/fixed_subtitles.srt
  • guidelines/mobile-subtitle-standards.md
  • LICENSE
  • README.md
  • src/subtitle_linter.py
  • tests/test_linter.py
  • tests/test_subtitles.py

How to evaluate and use it

  1. Read the README first and confirm that the documented problem matches your use case.
  2. Inspect the listed files to find the data, tools, templates, and tests relevant to your task.
  3. Follow the repository’s Quick Start and check prerequisites before running commands.
  4. Compare outputs with documented examples and review limitations before using them in a decision or client workflow.

Quick Start from the README: python -m unittest discover -s tests · python src/subtitle_linter.py --help

Scope and limitations

  • Arabic Glyph Shaping & BiDi Integrity: Ensures subtitle renderers do not detach Arabic letters or reverse character sequences when applying kinetic motion effects.
  • Words-Per-Screen Limits: Caps subtitle chunks at 3 to 5 words to maintain readability during fast-paced social video narration.
  • Contrast & Shadow Enclosure: Mandates text drop shadows or contrasting backdrop bars to prevent white text from disappearing on bright video backgrounds.

This page summarizes the available documentation; it does not establish performance or business results. Verify data and prerequisites before use.

Related repositories