(Étude de cas) · 2026

DentalCheck

Le comparateur de fournitures dentaires : six catalogues fournisseurs relevés chaque jour, plus de 61 000 références rapprochées et un panier réparti automatiquement au meilleur prix.

Type
SaaS · Comparateur de prix
Rôle
Conception, développement full-stack & data
Année
2026
Voir le site en ligne
Page d'accueil de DentalCheck avec un exemple de comparaison de prix

Le problème

Un cabinet dentaire commande ses fournitures chez plusieurs distributeurs, et une même référence peut varier de plusieurs dizaines d'euros d'une enseigne à l'autre. Pour trouver le bon prix, il faut ouvrir six sites, chercher la même fraise ou le même composite partout et tenir un tableur à jour.

La solution

DentalCheck relève chaque jour les catalogues publics de six fournisseurs (Mega Dental, GACD, Dental Click, Dental Privé, Discount Dentaire, Dental Good Deal) et les réunit par référence fabricant : une ligne par produit, tous les prix en face.

Le praticien cherche une fois, par nom, référence ou code EAN, et voit immédiatement l'écart entre le plus cher et le moins cher. Chaque prix est daté et conservé sur 90 relevés pour suivre son évolution. Le panier répartit ensuite chaque ligne vers le fournisseur le moins cher et affiche l'économie réalisée.

Le pipeline de données

La collecte est assurée par des scrapers Python qui interrogent directement les catalogues en HTTP et extraient les fiches avec des expressions régulières compilées, sans charger de navigateur : c'est rapide et peu coûteux. Playwright n'est sollicité qu'en dernier recours, pour passer un challenge Cloudflare.

Un moteur de rapprochement fusionne les doublons par référence fabricant (MPN), puis les visuels sont synchronisés vers Cloudinary en parallèle. Depuis le panneau d'administration, je pilote les scrapers et suis leurs logs en direct grâce aux Server-Sent Events.

Un vrai produit SaaS

L'inscription se fait par email ou avec Google, avec un essai de 14 jours sans carte bancaire. L'offre Pro à 20 € HT par mois est gérée par Stripe et débloque les listes de favoris, les notes par produit, le panier réparti et le signalement d'anomalie. Un espace d'administration permet de gérer les comptes et de corriger le catalogue en masse.

Stack technique

  • Next.js 16 & React 19Interface, routes API et pages pré-rendues (App Router)
  • MongoDB AtlasCatalogue, historique des prix, comptes et favoris
  • PythonScrapers des catalogues (Requests, lxml, regex compilées), rapprochement par référence fabricant
  • StripeAbonnements, essai gratuit et portail client
  • Better AuthConnexion email ou Google, rôles essai / pro / admin
  • CloudinaryImages produits servies par CDN, synchronisées en multi-thread
  • NodemailerEmails transactionnels
  • VercelHébergement et cache des pages statiques

SEO, performance & accessibilité

  • Pages publiques pré-rendues par Next.js et servies depuis le cache de Vercel : affichage quasi instantané
  • Title, meta description et balises Open Graph soignées pour Google et le partage sur les réseaux
  • Langue déclarée, structure de titres claire et URLs lisibles
  • Aucun traceur publicitaire ni outil d'audience tiers : des pages plus légères et un site conforme au RGPD
  • Panneau « confort de lecture » : thème clair, sombre ou contrasté, taille du texte jusqu'à 150 %, espacement, police adaptée à la dyslexie, liens soulignés, animations réduites et focus renforcé
  • Navigation mobile en barre basse, pensée pour une utilisation au cabinet

Captures d'écran

Panneau de confort de lecture de DentalCheck
Panneau de confort de lecture de DentalCheck
Les six fournisseurs suivis et les deux formules d'abonnement
Les six fournisseurs suivis et les deux formules d'abonnement
DentalCheck sur mobile
DentalCheck sur mobile

Un projet similaire ?

Parlons de ce que vous voulez construire. Réponse sous 24h.

Me contacter
Projet suivantPro Concept Agencement