Projets

Ces projets sont classés par ordre alphabétique.

Anilist Badges

Quand j’ai rejoint la communauté Anilist, je suis tombé sur des événements organisés par différents groupes (AL-Badges, Kusogaki, AWC, …), et j’ai décidé d’apporter ma contribution en créant un set de badges. Je n’ai pas prévu d’en faire de nouveaux, mais tous les badges ainsi que les fichiers .psd ont été archivés dans un dépôt Git. Sentez-vous libre de les réutiliser!

Lien: Archive

Automail

J’ai contribué au développement du script Automail pour Anilist (une collection d’améliorations et de traductions utilisateurs pour le site de tracking) en y ajoutant une traduction française.

Lien: Git

Black Anilist

Le thème sombre d’Anilist étant bleu, j’ai décidé de créer mon propre style personnalisé. Ce user style permet à l’utilisateur de choisir une couleur d’accent, corrige bugs et inconsistances, et améliore certaines animations.

Thème Anilist sombre

Lien: Git

Blog

Le site sur lequel vous vous trouvez est également un projet à part entière. Il a été réalisé à l’aide du programme Hugo, et complété d’un thème personnalisé tiré d’un projet existant appelé “Hugo Theme Terminal”.

Liens: Git (site) | Git (thème)

Edits

Lorsque j’étais plus jeune, j’ai réalisé quelques edits sur des jeux comme Call of Duty, ce qui m’a permis de me familiariser avec la suite Adobe. Une bonne partie est maintenant non répertoriée, mais tout peut être retrouvé dans une playlist dédiée.

Liens: Chaine | Dernier edit

Homelab

Lors des confinements du COVID-19, j’ai décidé d’héberger un serveur Minecraft à l’aide d’un vieux PC pour jouer avec quelques amis. Ce qui a commencé par être un moyen d’économiser sur les frais d’hébergement s’est finalement transformé en un véritable homelab. A ce jour, quasiment tout le hardware que j’utilisais en 2020 a été remplacé.

Dashboard de Proxmox

Le serveur principal, sous Proxmox, est basé sur un Ryzen 9 5900x, 128 Gb de DDR4 ECC et un total d’un peu plus de 72 Tb de stockage en RAIDZ2. Le NAS est virtualisé, mais un contrôleur dédié (LSI 9201-8i) permet un accès direct aux disques sans aucune abstraction.

Ce serveur est utilisé pour toute une variété de services: médias, automation, moteur de recherche, cloud, backups, Minecraft, …

Javelo

Javelo est une application permettant de planifier des itinéraires à vélo sur le territoire suisse. Lorsqu’au moins deux points ont été ajoutés à la carte, le chemin le plus rapide et adapté aux cyclistes est trouvé, et une courbe permettant de visualiser le dénivelé s’affiche. Une fois générée, la route peut être exportée au format .gpx.

Affichage de Javelo

Cette application a été réalisée à l’aide d’un ami lors de mon second semestre d’informatique à l’EPFL. Elle a été écrite en Java et l’interface est basée sur JavaFX.

Lien: Git

Linktree

Ne voulant pas dépendre d’un service tiers, j’ai décidé de créer mon propre remplacement aux services de type “Linktree”. La page s’adapte automatiquement au thème (clair ou sombre) du navigateur.

Page d'accueil du link tree

Liens: Git | Démo

Mastermind

Mastermind est un projet en deux parties réalisé au début de la formation d’informaticien à l’ETML. En première lieu, une version CLI a été créée afin de se familiariser avec les bases du C#.

Partie terminée de Mastermind (CLI)

Quelques semaines plus tard, cette base a été reprise et portée sur Windows Form. La version GUI supporte différents thèmes, propose un mode debug, un mode triche et est localisée en plusieurs langues.

Partie terminée de Mastermind (GUI)

Liens: Git (CLI) | Git (GUI)

RATP

Dans ce projet réalisé à l’ETML, j’ai repensé l’interface utilisateur des automates à billets de la RATP, puis implémenté le nouveau design en C# (.NET 8) en utilisant Windows Forms.

Interface de l'automate RATP

L’application est localisée dans cinq langues. Le code suit le patron de conception MVC et suit les bonnes pratiques i18n.

Lien: Git

Sites web

L’ensemble des sites webs que j’ai réalisés sont open source.

Page d'accueil d'une ancienne version du site

Démo: Site (α, β) | Blog
Git: Site | Blog

Spicy Invaders

Spicy Invaders est un clone du jeu Space Invaders réalisé en C# dans le cadre du cours de pratique de la programmation orientée objet à l’ETML. Nous avions beaucoup de liberté quant à l’implémentation et l’ajout de fonctionnalités.

Ecran de jeu de Spicy Invaders

Ma version du jeu propose trois niveaux de difficultés, plusieurs types d’ennemis, du son ainsi qu’un framerate ajustable.

En termes d’implémentation, mon jeu suit le design pattern MVC. Il est très modulable (bonne séparation des objets, classes et interfaces). La librairie NAudio a été utilisée pour les sons et un installateur est fourni.

Lien: Git

Start page

Il y a quelques années, j’ai commencé à rice mon OS. Voulant créer un visuel cohérent, j’ai créé ma propre start page pour mon navigateur. Elle a subi de nombreuses modifications depuis, mais elle reste relativement simple à mettre en place et à personnaliser.

Affichage de la start page

Aujourd’hui, elle supporte les thèmes clair et sombre, et plusieurs images peuvent être utilisée.

Liens: Git | Démo