I built a free Arabic app covering all 25 spoken dialects (11,700 entries) - no signup, works offline. Looking for testers and contributors

Wait 5 sec.

tl;dr - A free Arabic learning app organised by dialect instead of Modern Standard Arabic. 25 dialects, 11,700 word entries, installs as an app, works offline. No signup, no account, MIT licensed. Try it: https://jnazah07.github.io/arabic-dialects/ Android APK: https://github.com/Jnazah07/arabic-dialects/releases/latest Source (forks welcome): https://github.com/Jnazah07/arabic-dialects THE IDEA Nearly every Arabic app teaches Modern Standard Arabic / fusha. That is what you read, but it is not what you speak - nobody orders shawarma in fusha. Spoken Arabic differs a lot by country, and learners usually get told "just pick Egyptian or Levantine". I wanted every major dialect to have its own track. 25 dialects: Emirati, Saudi, Omani, Yemeni, Kuwaiti, Qatari, Bahraini, Malian, Nigerien, Senegalese, Iraqi, Jordanian, Lebanese, Palestinian, Syrian, Algerian, Egyptian, Libyan, Mauritanian, Moroccan, Sudanese, Tunisian, Comorian, Djiboutian, Somali. That is 25 x 39 units x 12 words = 11,700 word entries, each with Arabic script, English, and a transliteration. HOW IT PLAYS Pick a dialect, then work through themed units (greetings, family, food, numbers...) Tap an answer and it auto-grades and moves on - no Check/Continue mashing XP per completed unit, next unit unlocks as you go A test mode that pulls from what you have unlocked Progress saved locally in your browser Installable PWA, offline after first load The APK is a Trusted Web Activity wrapping the same site WHAT I WANT FROM YOU Accuracy, especially from native speakers. I cannot personally vouch for all 25 dialects - if a word is wrong, outdated, or just not what people actually say, tell me and I will fix it. Bugs - device/browser, layout, anything broken or awkward to tap. Pacing - is 12 words a unit too many? Is XP too slow? FOR ANYONE WHO WANTS TO FORK IT Deliberately framework-free: plain HTML/CSS/JS, no build step, no dependencies. Clone it, open index.html, and you are editing the whole app. Vocabulary lives in data/lessonData.js, the dialect roster in data/dialects.js - so fixing a translation or adding a dialect is a small PR. MIT licensed, so fork away. Thanks for reading - happy to answer anything.   submitted by   /u/Confident_You5798 [link]   [comments]