← Retour aux réalisations
SaaS / Marketplace2025 — en production
RésaLoto
Marketplace de réservation d'événements loto/bingo en France
Plateforme permettant aux associations de publier et gérer leurs événements loto/bingo. Abonnements Stripe Free/Pro/Premium, back-office dédié, React 19 + PHP/MySQL.
Stack technique
React 19FrontendVite 6BuildTailwind CSSStylePHP 8.4BackendMySQL 9.1BDDStripePaiementLeafletCartographieRechartsGraphiquesJWTAuthFPDFPDF
À propos du projet
RésaLoto est une plateforme SaaS full-stack permettant aux associations françaises de publier et gérer leurs soirées loto/bingo, et aux joueurs de les découvrir et réserver en ligne.
Développée de A à Z (React 19 + PHP 8.4 / MySQL), elle intègre un système d'abonnements Stripe (3 plans), des paiements à la carte, un back-office admin complet, des notifications in-app, la géolocalisation Leaflet, et même un système de gamification avec badges.
Plans tarifaires
Free
0 €
30 jours
Pro
9,90 €
90 jours
Premium
24,90 €
180 jours
Fonctionnalités
Découverte publique
- —Recherche multi-critères : département, ville, texte libre
- —Filtrage par date et statut
- —Carte interactive Leaflet (plan Premium)
- —Pages dédiées par département (101 départements)
- —Fiche événement avec lots, contact, galerie photos
Réservations & billets
- —Réservation de cartons en ligne avec options gratuites/payantes
- —Génération PDF avec QR code unique (FPDF)
- —Scan QR code à l'entrée (page check-in association)
- —Annulation possible côté utilisateur
- —Rappels email automatiques J-3 avant l'événement (cron)
Associations — plans tarifés
- —Plan Free (0€ / 30j) : annonce simple, description 200 chars
- —Plan Pro (9,90€ / 90j) : 5 photos, description illimitée, lots + contact affichés
- —Plan Premium (24,90€ / 180j) : géolocalisation carte, mise en avant, statistiques, réservations en ligne
- —Add-ons Stripe : Boost Homepage (4,90€), Boost Results (2,90€), Alerte département (1,90€), Extra Photos (1,90€)
Back-office association
- —Dashboard : liste des annonces avec statuts (pending/approved/rejected)
- —Créer / modifier / dupliquer / supprimer une annonce
- —Galerie photos par événement (drag & drop)
- —Statistiques : vues 14j, réservations, revenus estimés (Premium)
- —Gestion des options de réservation (gratuites et payantes)
- —Liste des réservants téléchargeable (CSV)
- —Modération des commentaires
- —Upload document de vérification association (PDF/JPG)
Dashboard utilisateur
- —Profil, favoris, historique des participations
- —Historique des réservations + téléchargement billets PDF
- —Système d'équipes : créer, inviter, chat (50 derniers messages)
- —Notifications in-app avec polling 30s (cloche header)
- —Badges de gamification débloqués automatiquement
- —Classement public (leaderboard) basé sur les participations
- —Abonnement alertes par département
Administration
- —Modération associations : approuver, rejeter, suspendre
- —Modération lotos : approuver (calcul expiration + featured), rejeter
- —Gestion utilisateurs centralisée
- —File de signalements paginée (50/page)
- —Dashboard analytique global
- —Journal d'actions admin avec IP + user-agent
Notifications & emails
- —Notifications in-app : badge rouge, dropdown 10 dernières, marquage lu
- —Types : loto approuvé/rejeté, nouveau loto à proximité, rappel J-3, paiement confirmé
- —Emails transactionnels : approbation/rejet association et lotos
- —Cron rappels J-3 automatiques avec notif in-app + email
Gamification
- —Badge Membre Bêta ⭐ — premier accès plateforme
- —Badge 1ère Participation 🎉 — premier loto
- —Badge Habitué 🎲 — 5 participations
- —Badge Expert 🏆 — 10 participations
- —Badge 1er Avis 📝 — premier commentaire
- —Badge 1ère Réservation 🎫 — première réservation en ligne
- —Leaderboard public classé par participations
Chiffres clés
Lignes de code35 000+ (12K JS + 23K PHP)
Fichiers React77 composants & pages
API PHP59 fichiers, 14 controllers
Tables MySQL20+ tables
Routes frontend25 pages (publiques + rôles)
PaiementStripe — 3 plans + 4 add-ons
