Où partir avec TGVmax ?
TGVmax c'est la possibilité de réserver au dernier moment une couchette dans l'Intercité de Nuit Paris Austerlitz → Perpignan : départ 22h10, arrivée 8h54, pile à l'heure pour prendre un petit déjeuner à la table d'une terrasse ensoleillée. Visite du somptueux Palais des Rois de Majorque, déjeuner sous un parasol, escapade à Collioures pour se baigner dans la méditérannée, et à 19h58 on remonte à bord de l'Intercité retour.
TGVmax c'est l'opportunité de visiter des villes (françaises) sur une journée, pour 0€*, comme cette escapade à Perpignan que j'ai faite l'été dernier sur un coup de tête.
Quelles villes peut-on visiter sur une journée avec TGVmax ?
Mais comment savoir quelles villes sont accessibles à la journée via TGVmax lorsqu'on habite Paris ? Et si on habite Lyon ? Ou Toulouse ? Ou Nantes ? Chaque jour 5 000 trajets sont éligibles à TGVmax, desservant 250 villes. Il serait impensable de tester toutes les combinaisons à la main.
Comme j'avais un peu de temps libre ces dernières semaines (🤯), j'ai développé un site web pour ça : https://oupartiravectgvmax.fr. Vous indiquez la gare/ville de départ, la date du voyage et la durée minimale que vous voulez passer sur place, et l'outil vous affiche sur une carte toutes les villes accessibles en faisant l'aller-retour sur la journée. Vous avez quelques informations au sujet de chaque ville : les horaires du train aller et du train retour, une petite illustration, le nombre d'habitants/étudiants, et la météo prévue si la date du voyage est dans moins de cinq jours (parce qu'openweathermap ne donne pas accès aux prévisions plus loin dans le futur sans devoir payer une fortune 😬, et puis de toute façon les prévisions au delà de cinq jours sont rarement fiables).
Petite précision cependant : les trains proposés sont éligibles à TGVmax, mais l'outil ne vérifie pas la disponibilité des places. Il est possible que certains trains ne disposent plus de places TGVmax au moment où vous faites la recherche.
Technologies utilisées
Le backend est en Node 13 avec express, le front est une app React (create-react-app) qui utilise Leaflet. Le CSS (minime) est maison. Le déploiement se fait sur mon serveur dédié Kimsufi avec Docker.
La liste des trains (gare/heure de départ/d'arrivée) éligibles à TGVmax provient de l'Open Data SNCF. Le fichier est re-téléchargé automatiquement tous les jours. La liste des gares est de Trainline. Les prévisions météo viennent d'openweathermap. Les informations démographiques de l'INSEE (la correspondance est faite sur le nom de la ville, pour certaines ça ne marche pas bien et les infos démographiques ne sont donc pas affichées). Et la petite image illustrant la ville provient simplement d'une recherche effectuée sur Qwant : je prends la première image qui sort pour la recherche "nom de la ville + ville" (Google a beaucoup de sécurités anti-bots, c'est pour ça que je me suis tourné vers Qwant ; en plus il y avait déjà un paquet npm). Pour les itinéraires des trajets (parfois erronés car le type de train n'est pas pris en compte) j'ai réutilisé mon précédent service trainmap.
Bons voyages 🚅 !