Je suis

Alexis CERDA DE ALMEIDA VILACA

et je suis en recherche d'une alternance. Passionné par le développement web, les applications Java et l'architecture logicielle. Sur cette page, tu trouveras mon CV et une sélection de mes projets.
Bienvenue sur mon portfolio !

À propos de moi

Je suis en 2ème année de BUT Informatique à l'IUT Nancy-Charlemagne.

Dans la perspective d'une poursuite d'études vers l'ingénierie ou la recherche en informatique, je me forge des compétences solides en développement logiciel et web avec différent frameworks.

En dehors de l'informatique, je nourris une passion particulière pour l'origami modulaire, une activité qui demande précision, patience et sens du détail.

Cette passion complète parfaitement mon approche du développement: construire, assembler, structurer et créer quelque chose de cohérent à partir d'éléments simples.

Portfolio

Mes Projets

Découvrez mes réalisations académiques et personnelles

Projets académiques

01

Station Blanche — Détection de menaces sur périphériques USB

CJava (Jakarta)Bash +3
Vidéo de démonstration À venir

Daemon système fonctionnant en arrière-plan, conçu pour l'analyse antivirale automatisée et en temps réel des périphériques USB.

Fonctionnalités principales :

  • Activation automatique à chaque connexion d'un périphérique USB
  • Mise à jour autonome des bases de signatures virales
  • Scan approfondi de chaque partition du périphérique
  • Alerte visuelle sur la machine en cas de détection et mise en quarantaine
  • Envoi automatique d'un rapport d'incident par e-mail aux administrateurs réseau

L'intégralité du système (paramétrage SMTP, réglages de l'analyseur C) est configurable via un fichier .ini.

C C Java (Jakarta) Java (Jakarta) Bash Bash Trellix ClamAV Cron
02

Dashboard Équipe — Gestion Collaborative

ReactSpring BootMySQL +1

Tableau de bord modulaire conçu pour s'adapter à tout contexte : aussi bien une équipe professionnelle, une organisation associative qu'un particulier souhaitant centraliser ses informations du quotidien. La philosophie du projet repose sur la simplicité d'usage et la personnalisation : chaque utilisateur active uniquement les widgets dont il a besoin. De nouveaux widgets sont prévus régulièrement pour enrichir l'expérience.

Widgets utilisateur :

  • Prêts de matériel — suivi des emprunts d'équipements avec dates de retour, statuts (en cours, en retard, rendu) et alertes visuelles.
  • Météo — intégration de l'API Open-Meteo (sans clé), avec température ressentie, humidité, vitesse du vent et prévisions sur 5 jours pour n'importe quelle ville.
  • Liste d'achat matériel — liste priorisée (haute / moyenne / basse) avec quantités, cases à cocher et barre de progression d'avancement.
  • Tâches à faire — attribution de tâches aux membres de l'équipe, avec priorité, catégorie, échéance et suivi de completion.
  • Départs / Arrivées / Stages — calendrier des événements de l'équipe (départ en congé, retour, stage) avec affichage chronologique et dates de début / fin.
  • Notes personnelles — bloc-notes intégré permettant de créer, modifier et supprimer des notes avec horodatage automatique.

Widgets admin :

  • Gestion des membres — ajout, recherche et suppression de membres avec rôle, email et affectation à un groupe.
  • Gestion des groupes — création de groupes colorés, liste repliable affichant les membres rattachés.

Architecture technique :

  • Frontend React — interface dynamique en composants, avec routage via React Router, gestion d'état et affichage conditionnel des widgets selon le profil utilisateur.
  • Backend Spring Boot — API REST exposant les endpoints pour chaque widget, gestion des utilisateurs et des rôles (admin / membre), persistance via Spring Data JPA / Hibernate.
  • Base de données MySQL — modèle relationnel stockant l'ensemble des données (membres, groupes, tâches, prêts, événements, notes), conçu pour s'adapter à plusieurs organisations indépendantes dans une même instance.
React React Spring Boot Spring Boot MySQL MySQL Tailwind CSS Tailwind CSS

Projets personnels

01

Strinova Map Assistant

ReactTypeScriptVite +2
Vidéo de démonstration À venir

Outil web interactif conçu pour la planification stratégique et le partage de tactiques pour le jeu Strinova. Le projet permet de marquer dynamiquement des cartes, de placer des icônes de personnages et de visualiser des line-ups (compétences et grenades).

Note : Ce projet est un fork du travail original de ShrLeeKNsword. J'en assure la maintenance, l'amélioration de l'expérience utilisateur et l'internationalisation complète (notamment la traduction française).

Fonctionnalités :

  • Système de dessin interactif (pinceau, lignes, flèches) sur les maps
  • Drag & drop de personnages et d'objets sur le canvas
  • Générateur d'icônes de compétences et de trajectoires
  • Support multi-langue (Français, Anglais, Chinois, Japonais)
  • Export de stratégies sous forme d'images
React React TypeScript TypeScript Vite Vite Semi UI Canvas Canvas
02

DevineMoi

ReactTypeScriptVite +1
Vidéo de démonstration À venir

Application web interactive (jeu de société en ligne) de devinettes de mots en français. Le projet propose une expérience de jeu fluide où les joueurs doivent deviner des mots sélectionnés aléatoirement parmi une vaste base de données lexicale française.

Détails techniques :

  • Interface épurée et moderne utilisant les composants Semi UI
  • Gestion dynamique de dictionnaires de mots français
  • Architecture performante basée sur Vite et React 19
  • Développement robuste avec TypeScript pour une meilleure maintenabilité
React React TypeScript TypeScript Vite Vite Semi UI
03

Portfolio statique

AstroTypeScriptCSS
Vidéo de démonstration À venir

Site vitrine responsive présentant mon parcours, mes compétences et mes projets. Développé avec Astro pour des performances optimales et utilisation de bonnes pratiques de structure HTML et de mise en page moderne.

Astro Astro TypeScript TypeScript CSS CSS
04

Simulateur de fractales

JavaJavaFXFXML
Vidéo de démonstration À venir

Application de visualisation interactive développée en JavaFX, permettant d'explorer et de manipuler différentes figures fractales en temps réel. L'utilisateur peut ajuster dynamiquement les paramètres de chaque fractale (niveau de récursion, dimensions, angle) pour en observer l'évolution.

Fractales prises en charge :

  • Flocon de Von Koch
  • Ensemble de Mandelbrot
  • Arbre de Pythagore
  • Tapis de Sierpiński
  • Courbe du Dragon

Le projet est structuré selon le patron d'architecture MVC (Modèle-Vue-Contrôleur), en s'appuyant sur les patrons de conception Stratégie et Observateur pour garantir une séparation claire des responsabilités et faciliter l'ajout de nouvelles fractales.

Java Java JavaFX JavaFX FXML FXML
05

Blind Test musical

ReactNode.jsExpress +2
Vidéo de démonstration À venir

Application web multijoueur de blind test musical fonctionnant en temps réel grâce à Socket.io. Chaque partie se compose de 10 rounds, où les joueurs doivent identifier une musique en moins de 30 secondes.

Fonctionnalités :

  • Lecture de musiques en temps réel synchronisée entre les joueurs
  • Système de score calculé selon la rapidité de la réponse
  • Sauvegarde des scores en base de données (MongoDB)
  • Interface réactive développée en React
  • Backend REST avec Node.js et Express
React React Node.js Node.js Express Express MongoDB MongoDB Socket.io Socket.io

Compétences

Icône React React
0%
Icône TypeScript TypeScript
0%
Icône Java Java
0%
Icône C C
0%
Icône Spring Boot Spring Boot
0%
Icône Express Express
0%