Featured project · AI agent
Halal Assistant: ask instead of search.
An AI agent built into Halal Open Food Facts and Halal Open Beauty Facts. It queries the product database through RAG and answers in plain language, with a nuanced status and a link to the source record.
< 3 s
response time
85%
accuracy on 200 test questions
4.5M+
products searchable in plain language
⚠ AI assistant, it can make mistakes. Check the product label.
I want halal milk, what do you suggest?
I found 5 products for “halal milk”. Product names don't always make it clear that it is milk, so check the record before buying.
- Goldium crémeux: compatible based on the listed ingredients, but the halal label was declared by contributors and is not verified. View record →
- Maître Fromager: compatible, halal label declared by contributors, not verified. View record →
- Code 6111259092525: ambiguous. An ingredient of uncertain origin or conflicting labels. View record →
- UserQuestion in plain language
- Halal Assistant widgetOn both sites
- RAG retrievalpgvector · PostgreSQL
- LLMClaude via OpenRouter
- AnswerNuanced status + source record
What the agent does
- Answers questions about a product.
- Assesses halal compliance from the ingredients.
- Helps users choose halal products that fit their request.
- Helps complete a product record.
- Guides users through the sites.
Safeguards
- Permanent warning: the AI can be wrong, check the label.
- Nuanced status: compatible, ambiguous, label verified or only declared.
- Every product cited links to its source record.
Stack
- Python
- RAG
- pgvector
- PostgreSQL
- Claude
- OpenRouter
halalopenfoodfacts.org halalopenbeautyfacts.org See the real screenshot ↗
The database in numbers
Taken from both sites in October 2026. Halal + non-compliant + doubtful + unknown = total.
Halal Open Food Facts 4,571,162 products
- Halal
- 1,097,660
- Non-compliant
- 103,048
- Doubtful
- 111,759
- Unknown
- 3,258,695
Halal Open Beauty Facts 67,759 products
- Halal
- 14,860
- Non-compliant
- 3,683
- Doubtful
- 612
- Unknown
- 48,604