Josselin Dionisi - Développeur indépendant

Montrer son projet local à d'autres ? C'est possible en le mettant en ligne...

ionicons-v5-k Josselin Dionisi 1 avr. 2021
1394 lectures Niveau : Confirmé

Comme tout dév’, il arrive parfois que je veuille tester des petits morceaux de code, faire une landing page d’exemple pour tester; un service ou une API …

Bref, les cas sont nombreux où l’on souhaite juste essayer quelque chose sans que ce soit pour autant un projet complet en bonne et due forme.

Pour cela, bien évidemment on fait tourner notre environnement de dév sur notre propre machine, en “local”.

Faire profiter au monde notre projet local

OK tout ça c’est bien beau, mais qu’est-ce qu’on fait si on a besoin d’accéder à ce code local depuis l’extérieur ?

Et oui ça peut arriver. J’ai par exemple eu ce cas de figure en voulant coder quelque chose lié à des QR code (ce sera d’ailleurs le sujet d’un futur article ;) ). En effet, comment je peux ouvrir une page liée à un QR Code depuis mon téléphone si la page n’est pas dispo en ligne ?

C’est pour cela que j’ai utilisé Ngrok

NgRok

Ngrok est un petit outil bien pratique qui va justement vous permettre via un système de tunnel de pouvoir accéder à n’importe quel site ou application qui tourne sur votre machine.

Pour cela c’est très simple il suffit de télécharger un petit exécutable que vous pourrez alors lancer en ligne de commande en spécifiant le type de protocole et le port sur lequel votre appli tourne en local.

Votre terminal va alors vous afficher une URL du type "http://xxxxxxx.ngrok.io" ainsi que la version HTTPS également. Il vous suffit de vous rendre sur cette URL pour accéder à votre page qui tourne en local. Magique non ?

Ngrok est disponible en version gratuite qui vous permet de créer un seul tunnel à la fois donc c’est vraiment pratique pour tester diverses choses. Mais si vous en avez besoin pour un usage plus poussé (la doc permet beaucoup plus de configurations) voire en prod il faudra passer à la version Premium dispo à partir de 5$ par mois.