Newbie help

#6
by AhmeDses - opened

Al Salam Alaykom Brother,
I'm newbie here and intrested in making apps like Tarteel in the quran correction topic.
I have good development skills (web developer mainly), but I'm confused how to use those things.
Can you please just give me some instructions? what should I learn or just getting started? just asking how to start here, like advices from an expert.

Thank you in forward <3!

Wa alaykum as-salam wa rahmatullah, brother! Happy to help, and it's great you want to build in this space. ๐Ÿค

Your web-dev skills transfer well here. Let me first share the single most important thing to understand, because it shapes everything you build.

Why Tarteel and most ASR apps don't really catch tajweed or mispronunciation

A normal ASR (speech-to-text) is trained to output the most probable word. So when you mispronounce a letter, or make a tajweed error (a missed madd, a wrong ghunnah, a wrong makhraj), the model still snaps your audio to the nearest valid word and prints the correct word, because that's the highest-probability option. The result: word-level ASR can tell you if you skipped or swapped a word, but it's basically blind to how you pronounced it. That's the core limitation in Tarteel and most ASR-based tools.

This fastconformer-quran model is a strong ASR, but it also outputs words, so on its own it has the same limitation. To work around that, I trained a pronunciation head + GOP (Goodness of Pronunciation) that outputs a percentage score of how accurately each part was pronounced, so you get real pronunciation feedback. It helps a lot, but I'll be honest, it's not perfect.

The better approach: phonemes. My newer model, zipformer_P, outputs phonemes instead of words, it transcribes the actual sounds you produced, not the word you intended. So if you mispronounce something, it shows the wrong phoneme and you can pinpoint exactly which letter/sound was off. And it's tiny, only ~65M parameters, light enough to run directly in the browser (ONNX / WASM), yet it beats Tarteel on a held-out Quran benchmark.
๐Ÿ‘‰ https://huggingface.co/Muno459/zipformer_p-quran
๐Ÿ‘‰ https://huggingface.co/Muno459/fastconformer-quran (the ASR + pronunciation head / GOP)

How a correction app fits together

  1. Capture mic audio (browser: Web Audio API / MediaRecorder).
  2. Run the model (phonemes from zipformer_P, or words + GOP from fastconformer).
  3. Figure out which ayah they're reciting, then highlight the differences.

For step 3: you can use a nearest-ayah search to detect which ayah the person was trying to recite (match the output against all ayat, take the closest). Then align the phoneme output against that ayah's expected phonemes and highlight the differences. The crucial point: because you compare phonemes (the actual sounds), mistakes still show up, you're not snapping to a "correct" word the way word-level ASR does. And since the phoneme model isn't perfect, set a tuned/finetuned threshold so the model's own small errors don't get flagged as the reciter's mistakes, only differences beyond the threshold count as real errors.

Getting started (web-dev friendly)

  • Easiest deployment: export to ONNX and run with sherpa-onnx (it has a WASM/browser build and mobile bindings, so streaming recognition with no heavy backend): https://github.com/k2-fsa/sherpa-onnx
  • Or a small Python + FastAPI backend serving the model, frontend talks to it over WebSocket.
  • The alignment/diff itself (Needleman-Wunsch / Levenshtein) is plain algorithm code, your wheelhouse.

What to learn, in order: (1) how ASR output works (tokens, CTC, phonemes) - you only need to use models, not train them; (2) onnxruntime / sherpa-onnx inference; (3) browser audio capture + streaming; (4) the alignment algorithm + thresholding.

Start small: get one recorded ayah transcribing in a script, then add nearest-ayah matching + alignment, then wrap it in a UI. Ask me anything along the way. May Allah make it easy and accept from you. ๐Ÿคฒ

if you really want to make something for the sake of Allah
and wont take money from it

you can understand this project and if you can make a clone of app and share later it's ok because i am afraid i die before sharing it for the sake of Allah

ุฑุจู†ุง ุชู‚ุจู„ ู…ู†ุง ุงู†ูƒ ุงู†ุช ุงู„ุณู…ูŠุน ุงู„ุนู„ูŠู…
https://github.com/Iam-Muslim/ReciteQuran

Thank you alot guys. but can I know why are you focusing on not earning money from this work? what's the problem if I took some money for this work? I'm just trying to find something that I can help muslims with, and earn my needed money from it in the same time, why not? I found it a great idea for multiple reasons, some of them: 1- 100% Halal work inshallah. 2- helping muslims. 3- making the service more serious, when I sell it for some Quran schools, they will take it more seriously when it's not full free or something like this (not a big reason, but I'm just saying that's not 100% a bad thing to have). 4- then using some of those money to rehelp muslims again and again. I think there is more reasons that I thought about sometime, but I don't remember them now.

*and for the (Hukum Sharea) in this topic (earning money from Quran) as much as I know there is alot of (Ulama) who say it's Halal and there is no problem with doing this.

Wa alaykum as-salam wa rahmatullah, brother ๐Ÿค

Nothing wrong with charging, you're charging for software (engineering, hosting, the algorithms), not for the Quran itself. The mushaf stays free; the tool around it is your labour. Most scholars even allow wages for teaching Quran. That said, I'm an engineer not a scholar, so ask someone you trust for certainty.

One thing I have to flag though, because it decides how you can monetize. My two models have different licenses, on purpose.

fastconformer-quran (ASR + pronunciation head / GOP) is Apache 2.0. Fully permissive. Build on this one and you can charge end users, sell to schools, add a subscription, whatever you want. No restriction.

zipformer_P (the phoneme model, better mistake detection) is free, non-commercial only. The gate is explicit: you can use, fine-tune and redistribute it and its outputs only in apps that are free to end users; you cannot sell it, paywall it, put a subscription or ads on it, or earn any revenue from a service that uses the model or its outputs; and the terms pass on to anyone you share it with. It closes with the ayah: "I ask of you no reward for it; my reward is only with the Lord of the worlds."

That's deliberate. The model is small enough to run in any browser, and I released it that way so the technology reaches every Muslim, including students and schools who could never pay, the people who most need to fix their recitation. Honoring the license is part of honoring that trust.

So, simply put: if you want to earn from the app, build on fastconformer (Apache) and you're clear. If you want zipformer_P's phoneme-level detection, the app has to be genuinely free, fund it some other way. You can't mix them either, a free tier on zipformer_P with a paid premium tier of the same service still counts as a service using the model.

May Allah accept from you and put barakah in whatever you build. ๐Ÿคฒ

Thank you my brother! Same thing for fastconformer-quran-streaming, right? I mean it's totally open-source and I can do what I like with it?

Thank you my brother! Same thing for fastconformer-quran-streaming, right? I mean it's totally open-source and I can do what I like with it?

but my brother Ahmed ...do you accept to take money From Quran ?
how do you accept this
however , also my flutter app you cannot use anything from it if you wanna take money from any work regarding the Great Quran

Is there any problem in taking money from making a software service around Quran?

  • ุฅู†ู‘ูŽ ุฃุญู‚ู‘ูŽ ู…ุง ุฃุฎุฐุชูู… ุนู„ูŠู‡ ุฃุฌุฑู‹ุง ูƒุชุงุจู ุงู„ู„ู‡ู
    ุฎู„ุงุตุฉ ุญูƒู… ุงู„ู…ุญุฏุซ : ุตุญูŠุญ
    ุงู„ุฑุงูˆูŠ : [ุนุจุฏุงู„ู„ู‡ ุจู† ุนุจุงุณ] | ุงู„ู…ุญุฏุซ : ุงู„ุฒุฑู‚ุงู†ูŠ | ุงู„ู…ุตุฏุฑ : ู…ุฎุชุตุฑ ุงู„ู…ู‚ุงุตุฏ | ุงู„ุตูุญุฉ ุฃูˆ ุงู„ุฑู‚ู… : 197
    | ุงู„ุชุฎุฑูŠุฌ : ุฃุฎุฑุฌู‡ ุงู„ุจุฎุงุฑูŠ (5737)ุŒ ูˆุงุจู† ุญุจุงู† (5146)ุŒ ูˆุงู„ุฏุงุฑู‚ุทู†ูŠ ููŠ ((ุณู†ู†ู‡)) (3038) ุจู„ูุธู‡ ุชุงู…ู‹ุง.

who said to you that ุงุฌุฑุง in this is the ุงุฌุฑ from people ?
ูˆูŽู…ุง ุฃูŽุณุฃูŽู„ููƒูู… ุนูŽู„ูŽูŠู‡ู ู…ูู† ุฃูŽุฌุฑู ุฅูู† ุฃูŽุฌุฑููŠูŽ ุฅูู„ู‘ุง ุนูŽู„ู‰ูฐ ุฑูŽุจู‘ู ุงู„ุนุงู„ูŽู…ูŠู†ูŽ โ€Ž

the prophet Muhammed whom i love did this , he whom i follow didn't take ุงุฌุฑ from people ....so who do you follow ?!!

ุฅูู†ู‘ูŽ ุงู„ู‘ูŽุฐูŠู†ูŽ ูŠูŽูƒุชูู…ูˆู†ูŽ ู…ุง ุฃูŽู†ุฒูŽู„ูŽ ุงู„ู„ู‘ูŽู‡ู ู…ูู†ูŽ ุงู„ูƒูุชุงุจู ูˆูŽูŠูŽุดุชูŽุฑูˆู†ูŽ ุจูู‡ู ุซูŽู…ูŽู†ู‹ุง ู‚ูŽู„ูŠู„ู‹ุง ุฃููˆู„ู€ูฐุฆููƒูŽ ู…ุง ูŠูŽุฃูƒูู„ูˆู†ูŽ ููŠ ุจูุทูˆู†ูู‡ูู… ุฅูู„ู‘ูŽุง ุงู„ู†ู‘ุงุฑูŽ ูˆูŽู„ุง ูŠููƒูŽู„ู‘ูู…ูู‡ูู…ู ุงู„ู„ู‘ูŽู‡ู ูŠูŽูˆู…ูŽ ุงู„ู‚ููŠุงู…ูŽุฉู ูˆูŽู„ุง ูŠูุฒูŽูƒู‘ูŠู‡ูู… ูˆูŽู„ูŽู‡ูู… ุนูŽุฐุงุจูŒ ุฃูŽู„ูŠู…ูŒ

Akhi, I didn't conceal anything (ุฃุนูˆุฐ ุจุงู„ู„ู‡) because the app is serving more than the base services that the recitor needs (reading, listening, tafseer and much more) but some services that costed us some money and alot of effort we offer it a little bit limited for non-paid users, like the Recitation correction and such things (only some not essential services, and not completely paid too!). Then those money that I take, I have a clear Hadith about it says "ุฅู†ู‘ูŽ ุฃุญู‚ู‘ูŽ ู…ุง ุฃุฎุฐุชูู… ุนู„ูŠู‡ ุฃุฌุฑู‹ุง ูƒุชุงุจู ุงู„ู„ู‡ู". so I'm taking this Halal money (inshallah) to have the ability to give the service that I'm giving for muslims more time to be better and better, and even if I didn't do that and took my money just because I need (or even want for some halal reason) this money, it's completely Halal too inshallah.
ุจุงุฑูƒ ุงู„ู„ู‡ ููŠูƒ ุฃุฎูŠ ุนู„ู‰ ุญุฑุตูƒ ุนู„ู‰ ุงู„ุฎูŠุฑ ูˆู†ูุน ุจู†ุง ูˆุจูƒ
*giving the service completely for free is 100% better for those, who actually can pay the operational costs without any problems and does not need the money anyway (btw. making the app has paid services is not something that always blocks users from reciting more, some users will take it more seriously when they pay! so that's a point! and there will be inshallah some systems to get the subscription for free for some users that reffer to friends or such things inshallah (and that's another motivation to have more people recite Quran!!)

ู…ุง ุนูŽู„ูŽู‰ ุงู„ุฑู‘ูŽุณูˆู„ู ุฅูู„ู‘ูŽุง ุงู„ุจูŽู„ุงุบู ูˆูŽุงู„ู„ู‘ูŽู‡ู ูŠูŽุนู„ูŽู…ู ู…ุง ุชูุจุฏูˆู†ูŽ ูˆูŽู…ุง ุชูŽูƒุชูู…ูˆู†ูŽ
I dont agree with you ... i notified you with a clear ayah and told you that you misunderstood the hadith ...and also i said to you how the prophet Muhammed whom i follow and love , didn't take ุงุฌุฑ from people ......

My brother, ุงู„ุฅู…ุงู… ุงู„ุดุงูุนูŠ ูˆุงู„ุฅู…ุงู… ู…ุงู„ูƒ and some Hanabila and some Hanafiya, and more than those from the scholars, they have all misunderstood the Hadith? above that I told you: I'm not charging anyone for the Quran itself (reading, listening and alot of more features that improve experience), and giving the people only some freemium features like: auto correction and such things.
What's the problem here bro? I'm not having this auto correction for free! I will use expensive paid GPU and servers, employees and more that this to run this app! From where can I get the time to do all of that if I didn't earn some money from the project itself? and I'm saying it again: for the essential features (and actually much more that it) I'm not charging anyone, but for more helping things like the auto correction (and maybe memorization and such things) I'm charging the users with freemium way maybe! what's the problem in that? imagine it like an external productivity app that I developed and selling to people, but the best part here that I merged it with Quran to use it in the best way!

I hope you understood that my brother in islam <3

*btw I'm not using your very beautiful offline system, I'm trying now to build something more effecient but it costs more to operate it, but you guys helped really, so THANK YOU!! ุฌุฒุงูƒู… ุงู„ู„ู‡ ุฎูŠุฑู‹ุง

Sign up or log in to comment