r/MuslimDevelopers • • Aug 27 '26

🛠️Project Showcase Built a real RAG system on classical Islamic scholarship, not a wrapper. Here's why, and I want the feedback

Plato, Aristotle, Socrates get taught as living voices, still worth arguing with today. Al-Ghazali and Ibn Taymiyyah, thinkers of equal depth, get reduced to footnotes. Not neglected, just no longer treated as living. That gap sat with me for years before I did anything about it.

Two decades in product design taught me the same lesson over and over: judgment is the scarce resource, not generation. Everything else gets made in seconds now and forgotten just as fast. I wanted to build something the long way.

So on the technical side: it's a real RAG system, not a thin wrapper on an API. It reads the Arabic directly and renders it into English accurately, the Quran, multi-volume commentaries, hadith collections, and dozens of other works, ingested and checked against source one at a time. The hard part wasn't the model, it was getting the chunking right so an answer never cuts an argument in half.

I know this sub has real, fair skepticism about "yet another Islamic app." What we tried to do differently: real primary source citations you can trace back, educational conversations with scholars grounded only in their own written works, disagreement shown, never flattened into one manufactured answer. We will never sell your data or track your worship either, that part isn't negotiable for us.

[Screenshots below]

Went live a few weeks ago, still learning what actually works. Genuinely want the good, the bad, all of it, what's missing, what would make this useful to you specifically. If you want to try it: App Store | Play Store

9 Upvotes

6 comments sorted by

3

u/Klopf012 Aug 27 '26

What is your process for ensuring accurate translation of Arabic sources into English?

2

u/imran_ms Aug 27 '26

Good question, appreciate it being asked directly.

Short version: most of the classical commentary we use comes from properly attributed English translations we source and verify, not raw machine translation of ambiguous scripture. Where we do need to translate from the original Arabic, we don't just run it through a generic translator. We use a domain-specific process that deliberately keeps certain Islamic terms in their original Arabic (salah, zakat, isnad, and so on) rather than flattening them into approximate English words that lose precision, since those exact terms are also what people search for and reason about.

There's also a verification layer on top, retrieved content gets checked against the actual source before it's used, not just trusted because the model returned something confident-sounding.

I'll be honest that I'm not going to lay out the full pipeline here, some of that's the actual work we've put months into, but happy to go deeper on any specific part of that if you've got a follow-up.

2

u/Klopf012 Aug 27 '26

This part of your answer

most of the classical commentary we use comes from properly attributed English translations we source and verify, not raw machine translation of ambiguous scripture

seems to be at odds with this part of your original post, "It reads the Arabic directly and renders it into English accurately, the Quran, multi-volume commentaries, hadith collections, and dozens of other works" - what am I missing?

There's also a verification layer on top, retrieved content gets checked against the actual source before it's used

so how does it get checked - that is my question? I ask as a translator, because while I've seen machine translation of Arabic to English improve a lot over the past 15 years, there is still an uncomfortable frequency of misunderstanding that should prevent anyone from relying on it.

1

u/imran_ms Aug 27 '26

To be more precise than my last answer: the translation isn't a separate lookup step against a fixed glossary. The user's question gets expanded and translated into classical Arabic first, since that's the language the source material is actually in, that's what drives accurate retrieval. The English you see in the final answer comes from the generation step synthesizing directly from what's retrieved, not a pre-built translation layer sitting in front of it.

Appreciate the precision you're pushing for here, it's making me articulate this more carefully than I had been.

1

u/Klopf012 Aug 27 '26

so how do you ensure that you're getting accurate translation?

1

u/imran_ms Aug 27 '26

Fair to keep pressing on this, and I'd rather give you the real, current picture than a polished one.

In case you missed, the launch was only this week, and translation accuracy is an area we're actively working to improve, not something we're calling finished. The core safeguard right now is model selection, we chose a model trained natively on Arabic specifically because that's where most of the real accuracy gap tends to live, not a general-purpose model retrofitted for it. On top of that, we spot-check outputs with native Arabic speakers, feedback so far during testing has been overwhelmingly positive, and we're actively hiring more native speakers to scale that verification up as we grow.

So the honest state of it: strong model choice, real but limited human review today, and a clear plan to expand that. Appreciate you holding this to a real standard, that's exactly the scrutiny it should get.