Read in English

tailhome : une page d'accueil pour mes services Tailscale

Une petite page d'accueil en Go qui se construit toute seule à partir des services Tailscale de mon tailnet, avec des icônes et des health checks en direct.

tailscale, ai, open-source, self-hosting

Je code maintenant l’essentiel de mes side projects sur un petit serveur distant. Avec Herdr, je peux lancer un agent de code autonome depuis mon téléphone, le laisser construire un nouveau prototype, puis exposer le résultat comme un Service Tailscale, avec sa propre adresse HTTPS sur mon tailnet.

Ça marche bien. Sauf que je me retrouvais régulièrement sur mon téléphone à taper des lettres au hasard dans la barre d’adresse, en espérant que l’autocomplétion se souvienne du nom donné à un service trois semaines plus tôt. Ou à ouvrir la console d’admin Tailscale juste pour retrouver une URL.

Je voulais une page sur http://home/ où chaque nouveau service apparaîtrait tout seul, sans un fichier YAML de plus à maintenir à la main. Alors j’ai créé tailhome.

tailhome à l’adresse home/, avec les services regroupés dans Devbox, Side Projects, Half-Finished & Abandoned et Other
Rassurez-moi, je ne suis pas le seul à abandonner 90 % de mes side projects ?

La liste se tient à jour toute seule : tailhome interroge l’API Tailscale, regroupe les services par tags et récupère les icônes dans dashboard-icons. Les applis web s’affichent en tuiles cliquables. Les services non HTTP, comme Postgres ou Redis, restent en bas de la page, et un clic copie leur adresse. Pour renommer, réordonner ou masquer quelque chose, un fichier overrides.yaml facultatif suffit.

Le tout tient dans un seul binaire Go, qui rejoint directement le tailnet via tsnet et s’annonce comme svc:home. Pas besoin d’installer Tailscale sur la machine hôte. Et comme tailhome est à l’intérieur du tailnet, il vérifie chaque service directement : un point vert veut dire que le service répond vraiment.

C’est volontairement juste un launcher. Pour des widgets, des stats serveur ou des flux, Homepage et Glance feront bien mieux le taff.


Avant l’IA, ce genre d’outil, je ne l’aurais pas fait. Là, je l’ai fait, même si je dois préciser que c’est en grande partie une IA qui l’a écrit, du code Go aux tests, en passant par le packaging et la doc. Moi, j’ai piloté la conception, testé sur mon tailnet et relu les diffs. La codebase est petite, elle est testée et je m’en sers tous les jours.

Les instructions d’installation et le fichier Docker Compose sont sur GitHub.