Simulateur Lotto 6/49

Un simulateur de Loto 6/49 qui permet de jouer des milliers de tirages en quelques secondes. Conçu pour rendre les cotes réelles, pas seulement théoriques.

StatutTerminé
Période2022
Tech
ReactViteTypeScriptTailwind CSSChart.jsVitesti18nextPWA
Introduction

Tout a commencé par un Post Reddit. Quelqu'un au Royaume-Uni avait construit un simulateur similaire pour la loterie britannique, et les commentaires regorgeaient de gens véritablement surpris de gagner aussi rarement après des milliers de tentatives. Je voulais la même chose pour Loto-Québec.

Le concept est simple : simulez autant de tirages que vous voulez, regardez vos dépenses grimper, et laissez les chiffres parler. Pas d'avertissements, pas de commentaires éditoriaux, juste la probabilité qui se joue à grande échelle. Ça fonctionne comme expérience sociale parce que tout le monde a déjà acheté un billet à un moment ou un autre. Montrer à quelqu'un 5 000 tirages où il a dépensé 15 000 $ et gagné 500 $ frappe différemment que n'importe quel cours de statistiques.

Technologies

React 19 avec Vite et TypeScript pour le cœur de l'application. Chart.js gère les visualisations. Les graphiques font que les résultats parlent visuellement et pas seulement numériquement. Le moteur de tirage a ses propres tests unitaires avec Vitest, ce qui est un problème intéressant puisqu'on ne peut pas affirmer une sortie exacte, seulement que les résultats respectent les distributions attendues. L'application est aussi bilingue via i18next et se déploie en PWA, donc elle peut être installée sur mobile et fonctionne hors ligne.

Ce que j'ai appris

Construire la boucle de simulation était vraiment amusant. Trouver comment exécuter des milliers de tirages sans bloquer l'interface était un problème gratifiant. Tester de la logique probabiliste avec Vitest était un nouveau terrain : on ne peut pas affirmer un résultat exact, donc on finit par tester la forme des distributions. Le plus gros défi était l'interface. L'application génère beaucoup de données, et le vrai travail consistait à décider quoi afficher, quoi masquer, et comment présenter le tout de façon significative pour quelqu'un qui consulte sur son téléphone.