WEB OS est un projet personnel d’expérimentation autour du concept de portfolio multithème.
L’idée était de créer une interface permettant de changer complètement de thème visuel (Ubuntu, 2D, 3D) tout en parcourant les réalisations d’un développeur.
Pour cette version, j’ai choisi l’univers Ubuntu, avec une interface qui reprend les codes visuels d’un système d’exploitation : fenêtres, barres de navigation, transitions. L’objectif était double :
Expérimenter la création d’un environnement immersif complexe en JavaScript et React.
Explorer l’expérience utilisateur d’un portfolio interactif, où le visiteur peut “naviguer” comme dans un OS personnalisé.
Ce projet m’a permis de travailler sur :
La gestion dynamique des thèmes et de leurs styles.
Les animations fluides au service de l’expérience immersive.
L’architecture React pour rendre l’ensemble modulaire et évolutif.
Il s’agit avant tout d’un terrain d’expérimentation créative et technique, qui ouvre la voie à d’autres déclinaisons de portfolio interactif (en 2D rétro, en 3D, etc.).
La création de WEB OS – Ubuntu posait plusieurs défis :
Un portfolio multithème
L’idée était d’offrir plusieurs univers visuels (Ubuntu, 2D, 3D). Cela impliquait de concevoir des composants différents pour chaque thème, tout en gardant une base commune solide. Le risque était de se retrouver avec un projet difficile à maintenir si chaque thème fonctionnait de manière totalement isolée sachant que la 2D aurait besoin de Phaser.js et la 3D aurait besoin de Three.js
Des styles visuels très différents
Chaque thème avait ses propres couleurs, animations et interactions. Il fallait donc mettre en place un système clair pour que les styles ne se mélangent pas entre eux et que l’expérience reste fluide et cohérente.
Animations immersives mais légères
Les thèmes intégraient des animations visuelles, parfois plus poussées (comme en 3D). L’enjeu était de conserver une navigation fluide, y compris sur mobile, tout en gardant l’effet “waouh” d’un univers immersif.
Performances et chargement rapide
Comme chaque thème embarque ses propres visuels et animations, il fallait trouver une solution pour ne pas alourdir le site et ne charger que ce qui est vraiment nécessaire.
Une architecture claire et évolutive
Pour éviter les répétitions de logique et garder une certaine simplicité, j’ai séparé ce qui est “commun” (la structure et la logique du site) de ce qui est “spécifique” à chaque thème (le design et les animations).
Une gestion multilingue
Le projet devait être disponible en plusieurs langues. Cela ajoutait une contrainte supplémentaire : tous les textes devaient être centralisés et faciles à traduire, indépendamment du thème visuel choisi.
Préférences utilisateurs
Enfin, le projet devait se souvenir des choix de l’utilisateur : son thème préféré et sa langue, afin qu’il retrouve la même expérience lors de sa prochaine visite.
Un sélecteur de thèmes intégré
Le projet intègre un véritable “grub” permettant de choisir son thème de portfolio dès l’ouverture. Les données communes, comme la langue, sont partagées entre tous les thèmes pour offrir une expérience cohérente.
Un thème Ubuntu fonctionnel
Le thème Ubuntu est déjà pleinement utilisable et prêt à évoluer. Il propose un système de fenêtres interactives qui permet de créer autant d’applications que souhaité : un explorateur de fichiers type Finder, une messagerie ou encore une fenêtre d’accueil. Un système de comptes ajoute une couche de sécurité et personnalisation.
Un thème 2D expérimental avec Phaser.js
Le deuxième thème utilise Phaser.js pour offrir une expérience ludique sous forme de jeu rétro. Le visiteur peut déjà interagir avec cet environnement, et il suffira de poursuivre le développement pour transformer cette base en véritable jeu permettant de découvrir les projets de manière originale.
Une base 3D prête avec Three.js
La bibliothèque Three.js est installée et configurée pour le dernier thème. La prochaine étape sera de développer ce module afin de créer une bibliothèque 3D immersive, où le portfolio pourra être exploré sous forme d’univers interactif.
Pour le moment, le projet WEB OS – Ubuntu est mis en pause afin de me concentrer sur des projets clients et l’exploration d’autres pistes créatives. Je compte cependant le reprendre plus tard, avec l’objectif d’améliorer les thèmes existants et de finaliser l’expérience 2D et 3D pour en faire un portfolio encore plus immersif et abouti.