Staff Directory App

Dans un contexte professionnel où les équipes évoluent et s’agrandissent rapidement, notamment via des acquisitions, savoir qui fait quoi et où peut vite devenir un casse-tête. C’est une situation que j’ai observée dans une entreprise confrontée à une croissance significative et à un personnel assez fluctuant. La tâche de maintenir à jour un simple trombinoscope, autrefois gérée manuellement par une graphiste, était tombée aux oubliettes après son départ. Pourtant, le besoin d’identifier facilement ses collègues au sein des différents services et filiales devenait de plus en plus pressant.

Face à ce constat, j’ai eu l’idée de développer “Staff Directory”, une application web open-source conçue pour répondre à ce besoin précis : offrir un annuaire du personnel simple, visuel et facile à administrer, notamment par un service de ressources humaines.

Un choix technologique pragmatique

Mon objectif était de créer une solution rapidement déployable et maintenable, en tenant compte des contraintes techniques souvent rencontrées dans de nombreuses structures. L’entreprise pour laquelle j’ai initialement imaginé cet outil disposait principalement de serveurs Linux sous Apache/PHP/MySQL, avec des accès parfois limités. C’est une pile technologique encore extrêmement répandue en 2024/2025, que ce soit dans les PME ou les associations. Je voulais donc que l’application puisse être installée simplement, via un transfert FTP et une configuration de base de données via PhpMyAdmin, sans nécessiter de compétences serveur avancées.

Le développement, réalisé en environ une semaine, n’a pas été un chemin linéaire. J’ai d’abord exploré une piste avec React, mais les limitations de version de Node.js sur les serveurs cibles m’ont freiné – je ne souhaitais pas m’embarquer dans la gestion de dépendances potentiellement obsolètes.
Ensuite, j’ai envisagé Laravel 12, mais là encore, la nécessité d’une version de PHP plus récente (PHP 8) que celle disponible m’a fait changer de cap. De plus, pour un besoin aussi ciblé, un framework complet comme Laravel me semblait disproportionné. Je voulais quelque chose de léger et direct.

Finalement, je suis revenu aux fondamentaux : PHP pour le backend, MySQL pour la base de données, et pour le frontend, du Vanilla JavaScript (JavaScript natif, sans framework lourd) couplé à Tailwind CSS pour une interface moderne et facilement personnalisable. Ce choix assure une compatibilité maximale et une légèreté appréciable.

Curieusement, le développement le plus laborieux n’a pas été la logique métier principale, mais la gestion des zones de dépôt (drag-and-drop) pour les photos de profil dans les formulaires. Anticiper tous les cas d’usage (ajout, remplacement, suppression, erreurs) a demandé pas mal de réflexion. En revanche, la mise en place du système d’authentification simple et la gestion multilingue (français/anglais pour l’instant) ont été relativement rapides. Je suis conscient qu’une partie du code mériterait d’être nettoyée et refactorisée, mais la priorité était de livrer rapidement une solution fonctionnelle et sans bogues majeurs.

Un trombinoscope amélioré et personnalisable

Au cœur de “Staff Directory”, il y a bien sûr la possibilité de mettre un nom sur un visage. Mais l’application va plus loin : un système de recherche et de filtres croisés permet de naviguer facilement entre les départements, les localisations (ou filiales) et de trouver rapidement les bonnes personnes. C’est un outil précieux pour comprendre l’organisation et favoriser les interactions.

Pour l’utilisateur final, c’est un trombinoscope moderne et interactif. Pour l’entreprise qui l’adopte, j’ai veillé à ce qu’elle puisse facilement personnaliser le logo et le titre de l’application. Le design, basé sur Tailwind, est volontairement minimaliste et épuré, afin de s’intégrer discrètement dans l’environnement de n’importe quelle organisation sans nécessiter de refonte graphique majeure.

Et demain ?

Le projet est fonctionnel en l’état, mais des évolutions sont envisageables. On pourrait imaginer ajouter des informations comme la date d’entrée dans l’entreprise ou d’autres champs spécifiques. La mise en place d’une API pourrait également être intéressante pour permettre à d’autres systèmes (un intranet existant, un CMS) de consommer les données de l’annuaire.

Disponible pour tous

J’ai choisi de publier “Staff Directory” en open-source sur GitHub car je pense qu’il peut être utile à de nombreuses petites et moyennes structures qui font face aux mêmes défis et qui disposent d’une infrastructure web standard.

Vous pouvez tester l’application en direct sur https://staff-directory.jensen-siu.net et bien sûr, cloner ou télécharger librement le code source depuis le dépôt GitHub : https://github.com/seangoogoo/staff-directory.

J’espère que cet outil simple et pragmatique pourra aider d’autres organisations à mieux connecter leurs équipes.

CodeCSSJavascriptPHPTailwind

Aucun commentaire

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *