Command Palette

Search for a command to run...

Sylvain L.
Sylvain L.

Sylvain L.

Développeur Full Stack & Web Designer

Je développe de tout, mais principalement des sites Internets et des APIs. J'expérimente beaucoup, surtout du côté back-end chez Zenetys.

Technologies

Langages

HTMLHTML
CSSCSS
JavaScriptJavaScript
TypeScriptTypeScript
PHPPHP

Frameworks

ReactReact
Next.jsNext.js
Node.jsNode.js
Tailwind CSSTailwind CSS
BootstrapBootstrap

Bases de données

MongoDBMongoDB
PostgreSQLPostgreSQL
MySQLMySQL
SQLiteSQLite
FirebaseFirebase

Outils & IDE

VS CodeVS Code
VimVim
Android StudioAndroid Studio
npmnpm
NodemonNodemon
Voir tous les projets
Parcours

Ensitech

BTS SIO SLAM (2 ans)

Zenetys

Développeur Web

Front-End8 ans
Back-End5 ans
GitHub
@20syldev
Contributions aujourd'hui
Contributions ce mois
Contributions l'an dernier
Certifications
Google DeveloperGemini AIFirebaseGoogle StudioGoogle CloudGoogle Maps

Alternance

Développement Web chez Zenetys

À propos de Zenetys

Zenetys est une société par actions simplifiée (SAS) créée en 2016 par d'anciens membres de la société Exosec, suite à sa fermeture. L'entreprise est spécialisée dans les solutions de supervision et de gestion des infrastructures informatiques.

Elle développe des outils innovants pour la surveillance réseau, la gestion des logs, et l'analyse des systèmes d'information.

Je crée, améliore, teste et optimise des applications web et des plugins. J'ai été lancé dans plusieurs projets et j'ai pu mettre en pratique mes connaissances en développement.

Projets réalisés

Outil de supervision
Node.jsElasticSearchHTMLCSSJS

J'ai recréé de zéro l'interface utilisateur et l'API de l'outil de supervision de Zenetys. Il était auparavant disponible à l'aide de Kibana, mais j'ai développé une solution plus intégrée et personnalisable.

L'interface utilisateur

L'interface utilisateur a été entièrement repensée pour offrir une expérience plus fluide et moderne. J'ai créé mes propres composants pour la mise en page, et j'ai ajouté des animations CSS pour rendre l'interface plus dynamique. Les mises à jour sont en temps réel afin que les utilisateurs puissent voir les changements immédiatement.

Responsivité et accessibilité

J'ai veillé à ce que l'interface soit responsive et accessible sur tous les appareils. Des options sont disponibles pour ajuster l'affichage en fonction des préférences de l'utilisateur : hauteur des lignes des tableaux, désactivation des animations.

L'API

L'API permet de récupérer des données de la base ElasticSearch, et de les exposer via des endpoints REST. J'ai utilisé Node.js pour développer l'API, c'est plus rapide et plus léger que d'autres solutions.

Outil de supervision
Lyah - Application de chat collaboratif
Node.jsWebSocketPostgreSQLHTMLCSSJS

Lyah est une application de chat collaboratif commencée en Mars 2025. J'ai designé et développé l'interface utilisateur, en utilisant HTML, CSS et JavaScript. L'API est développée en Node.js, et utilise un système de WebSocket pour la communication en temps réel.

L'interface de chat

L'interface est simple, intuitive et moderne. Elle inclut un menu latéral rétractable, permettant de naviguer entre les différentes conversations. Vous pouvez créer des groupes de discussion, changer le thème ou la langue de l'interface.

Responsivité

L'interface est entièrement responsive, et s'adapte à tous les écrans. Il faut swiper vers la droite pour ouvrir le menu latéral, et vers la gauche pour le refermer.

Les modèles d'IA

Lyah utilise 5 modèles d'IA internes, chacun ayant ses propres spécificités, ainsi que certains modèles de Ollama. Vous pouvez poser des questions et envoyer des retours pour améliorer les modèles.

WebSocket

Le système de WebSocket est utilisé pour la communication en temps réel entre le client et le serveur. Cela permet d'envoyer et de recevoir des messages instantanément.

LogVault - Service de gestion de Logs
Vue.jsTailwind CSS

LogVault est un service de sécurisation et de gestion de logs, développé par Zenetys. J'ai été impliqué dans le développement de l'interface utilisateur en Vue.js, et j'ai entièrement développé le site web.

Qu'est ce que LogVault ?

LogVault permet de centraliser, sécuriser et analyser les logs de vos applications et infrastructures. Il possède une interface web intuitive permettant de visualiser les logs en temps réel, de les analyser via des graphiques.

Interface moderne

L'interface utilisateur est développée en Vue.js. Le site web utilise Tailwind CSS pour un design moderne, avec un mode clair et sombre automatique.

LogVault - Service de gestion de Logs
ZPKI - Gestion de certificats SSL
Node.jsBootstrapShell/BashOpenSSL

En début d'année 2024, j'ai entrepris la refonte complète de l'interface utilisateur pour ZPKI, un outil de gestion de certificats OpenSSL. La complexité m'a conduit à recréer entièrement l'application en deux mois.

Fonctionnalités principales

Création et gestion d'autorités de certification (CA) et de certificats. Actions avancées : mise à jour, révocation, désactivation des certificats. Visualisation avec des informations détaillées sur le statut, les dates, les téléchargements.

Interface utilisateur

Développée avec Bootstrap 5.3.3, elle offre une recherche avancée, gestion multi-CA, actions sécurisées avec passphrase, et support multilingue (Français, Anglais).

API et sécurité

Développée en Node.js, l'API assure des interactions fluides avec validation des entrées et double vérification via l'interface. Elle exploite les modules spawn et exec pour exécuter les commandes bash avec des sécurités renforcées.

Draw.io Plugin pour YaNA
JavaScriptDraw.io API

Ce plugin améliore l'usage de Draw.io pour visualiser et gérer des infrastructures réseau à l'aide des données de YaNA et Kompot.

Fonctionnalités principales

Création automatique de schémas à partir des équipements réseau. Mise à jour des informations en fonction des données de YaNA avec changement de couleur selon le statut. Ajout, suppression et modification des équipements tout en conservant les positions manuelles.

Gestion simplifiée

Le plugin utilise les données de YaNA pour ajouter des switchs, tracer automatiquement les connexions réseau, afficher les VLANs et donner un style distinctif aux liens en fonction de la vitesse et du mode duplex.

Contributions externes

split()
PR #6384
rsyslogC

Nouvelle fonction RainerScript pour parser des chaînes délimitées (CSV, tags, chemins) en tableaux JSON sans traitement externe.

split(string, separator) → JSON array

Gère les cas limites : entrées vides, délimiteurs consécutifs, en début/fin de chaîne. Documentation et tests inclus.

append_json()
PR #6385
rsyslogC

Nouvelle fonction RainerScript pour construire dynamiquement des structures JSON sans traitement externe.

append_json(array, element) → JSON array
append_json(object, key, value) → JSON object

Retourne une nouvelle structure (immutable). Documentation et tests inclus.