Demander un devis
Qindil

Spiritualité · Tout sur l'appareil

Qindil

Prières, Coran et dhikr, pensés et écrits en français. Aucun compte, aucune publicité, aucun serveur : vos données restent sur votre téléphone. Qindil (قنديل), la lanterne.

En préparation pour les stores

Pourquoi cette app

Dans cette catégorie, la confiance est le produit.

En lisant les avis des applications existantes, les mêmes reproches reviennent : de la publicité en plein écran dans un contexte religieux, un scandale de revente de données de localisation encore cité des années après, des horaires qui ne collent pas à la mosquée du coin, du contenu sacré placé derrière un péage, et l'appel à la prière qui ne sonne pas.

Qindil répond point par point : zéro publicité, aucun compte, aucun serveur, sept méthodes de calcul avec ajustement fin par prière, rien de verrouillé, et des notifications locales traitées comme la fonction principale plutôt que comme un détail.

La promesse tient parce qu'elle est littérale dans le code : un seul flux réseau existe, l'audio de la récitation. On ne peut pas vendre vos données, nous ne les avons pas.

Comment elle marche

Quatre onglets, et rien qui demande la permission d'exister.

  • Prières : horaires calculés sur l'appareil, timeline du jour aux couleurs du ciel, pointage et compte à rebours. L'appel sonne à l'heure même application fermée, avec le widget et l'activité en direct sur l'écran verrouillé.
  • Coran : le texte complet, la traduction tunisienne et trois façons de lire, verset par verset, page à page ou un verset plein écran. La récitation suit la lecture mot à mot, tout se télécharge pour écouter hors ligne, et la lecture reprend là où vous l'aviez laissée.
  • Dhikr : les routines du matin et du soir tirées de la Citadelle du Musulman, chaque invocation avec sa référence, le tasbih et les 99 noms.
  • Les repères du jour : calendrier hijri avec les jeûnes recommandés, qibla, mode Ramadan, et un mode dispense pensé avec pudeur qui protège la série au lieu de la casser.
  • Un écran d'apaisement : respiration guidée et invocations, pour les moments où l'application sert à se poser plutôt qu'à cocher.
  • Sur tous vos écrans Apple : widgets, activité en direct et une application Apple Watch compagnon, bilingue.

Les défis techniques

Soixante-quatre notifications, et le système qui jette le reste sans rien dire.

Le budget de notifications, la panne la plus grave. Quatre planificateurs indépendants demandaient ensemble bien plus de déclenchements que le plafond autorisé par iOS. Le système garde les plus proches et jette le surplus sans renvoyer la moindre erreur : concrètement, ce sont les prières des derniers jours programmés qui sautaient, c'est-à-dire la promesse numéro un du produit, pendant que le compteur interne les comptait comme réussies. Un allocateur maison répartit désormais par priorité, les prières d'abord, et lit l'état réel de la file au lieu de le deviner, y compris les déclenchements posés par du code qui n'est pas le sien.

L'écran noir définitif. Il n'existait aucune barrière d'erreur dans l'application. En version publiée, une exception pendant le rendu ne provoque pas de crash natif : l'arbre se démonte, l'écran reste noir pour de bon, et rien ne remonte dans les outils d'Apple. Deux niveaux ont été posés, un à la racine et un autour de la navigation, avec des couleurs figées en dur, parce que l'écran de repli doit s'afficher même quand c'est justement le thème qui vient de tomber.

Le streaming, obtenu par correctif natif. La bibliothèque audio téléchargeait le fichier entier avant de jouer la première seconde. Un correctif appliqué à la dépendance passe la lecture distante en vrai streaming. Dans la foulée, les courses du lecteur ont été fermées : la garde anti-réentrance arrivait après deux attentes, si bien que deux appuis rapides faisaient annoncer une sourate pendant qu'une autre jouait. Une interruption d'appel redevient une pause reprenable au lieu d'un saut à la piste suivante.

Un micro et des photos fantômes dans le binaire. La bibliothèque audio embarquait un enregistreur complet, et une autre dépendance référençait le framework Photos. Ces symboles suffisent à ce que l'analyse statique d'Apple considère que l'application accède au micro et refuse l'envoi, faute d'un texte de permission qu'on ne pouvait pas écrire honnêtement puisque rien n'enregistre. Les deux ont été neutralisés par correctif de dépendance : un build validé sur un iPhone n'aurait jamais révélé le problème.

Les chemins d'échec qui mentent. Un refus de permission de notification se résout normalement au lieu de lever une erreur : les planificateurs sortaient donc en silence pendant que les réglages affichaient des interrupteurs allumés qui ne déclenchaient rien. Un téléchargement intercepté par un portail captif répond avec un code de succès, et une page web se retrouvait renommée en fichier audio, coche verte à l'appui. Au-delà du cercle polaire, le moteur de calcul renvoie des valeurs non numériques plusieurs semaines par an. Le chemin nominal était sain : ce sont les chemins d'échec qu'il a fallu reprendre.

Le seul point qui ne se résout pas au clavier. La traduction, la récitation et la police calligraphique envisagées au départ sont sous des licences réservées à un usage non commercial. Le risque réel n'est pas le procès, c'est la revue d'Apple, qui peut demander l'autorisation écrite. C'est ce constat qui a fait basculer le modèle vers la gratuité intégrale, sans rien de verrouillé, avec un soutien facultatif : un usage non commercial redevient défendable, et le questionnaire de confidentialité d'Apple peut répondre « aucune donnée collectée » sans mentir.

La stack

Local-first au sens littéral du terme.

Les horaires sont calculés sur l'appareil. Le Coran est une base SQLite embarquée dans l'application, construite puis vérifiée par des outils maison qui recomptent sourates et versets avant chaque livraison. La position sert au calcul et n'est jamais transmise, et une base de villes embarquée permet d'afficher un nom de lieu exact sans appeler quoi que ce soit.

Il n'y a ni Firebase, ni analytics, ni outil de rapport de plantage, ni SDK d'achat tiers. Le soutien facultatif est un module natif StoreKit 2 écrit pour l'application. Les erreurs sont consignées dans un journal local que la personne choisit d'envoyer ou non.

La direction artistique est arrêtée : une arche dorée éclairée de l'intérieur par une lumière chaude, sur une nuit bleu marine profonde. Les bleus sombres portent la quasi-totalité de la surface, l'or ne sert qu'aux contours et aux détails. Le contenu religieux a été recoupé référence par référence, aucun bienfait n'est inventé, et aucune récompense n'est comptabilisée nulle part.

React Native · TypeScript · adhan · SQLite embarquée · MMKV · Zustand · React Query · Notifee · NativeWind · Reanimated · WidgetKit · Live Activity · StoreKit 2 · Apple Watch

Télécharger

En ligne sur l'App Store.

Qindil est en ligne sur l'App Store depuis le 20 août 2026.

Android : pas encore publié.

Une idée d'application ?

Ces applications, nous les concevons, les codons, les testons et les préparons pour les stores nous-mêmes. C'est exactement le travail que nous faisons pour les clients de l'agence.