Bangla Typing
Bengali typing learning and testing platform
The Challenge
No structured, progressive learning platform exists for Bengali keyboard typing. Most tools only test speed — they do not teach. And standard string indexing breaks for Bengali conjuncts (যুক্তবর্ণ).
The Solution
A curriculum-based platform teaching from basics to advanced layouts with real-time grapheme-aware validation. Each lesson targets specific letter groups. The grapheme engine uses Intl.Segmenter and Unicode NFC normalization to correctly identify and compare Bengali characters regardless of code-point count.
System Architecture & Data Flow
Key Takeaways & Engineering Insights
The hardest part was not the typing engine itself — it was the grapheme segmentation. Bengali "ক্ষ" is three code points but one conceptual character. Standard .length, .slice(), and indexOf() all fail. Switching to Intl.Segmenter fixed all backspace, cursor, and error-count bugs at once. Lesson: do not assume string primitives work for non-Latin scripts.