Technologies

Langages

  • aucun projet

    Bash / Shell

    Le langage de mon exploitation serveur : diagnostic, inspection de conteneurs et scripts de déploiement.

  • aucun projet

    Java

    Le langage de mes projets de DUT Informatique, dont un démineur complet avec interface graphique.

  • aucun projet

    JavaScript

    Le langage par lequel je suis entré dans le web, que j'écris encore pour les bots Discord, les extensions de navigateur et les scripts jetables.

  • aucun projet

    LaTeX

    Mon CV et mon mémoire de licence professionnelle, avec une classe de document personnalisée et une bibliographie BibTeX.

  • aucun projet

    PHP

    Découvert en formation à travers Symfony et Laravel : routing, contrôleurs, Doctrine et templates Twig.

  • aucun projet

    Python

    Mon langage pour la donnée, la vision par ordinateur et les scripts d'automatisation, du comptage cycliste embarqué au traducteur de ROMs.

  • aucun projet

    Rust

    Utilisé seulement quelques fois, pour découvrir le langage et créer des applications légères.

  • aucun projet

    SQL

    Toujours utile, même quand j'utilise des ORM : besoin de faire des requêtes rapides, des calculs, des analyses et autres.

  • aucun projet

    TypeScript

    Mon langage principal, dans tous mes projets.

Frameworks

  • aucun projet

    AdonisJS

    Le framework de mon site personnel. Je l'ai choisi précisément là où Next.js n'apporte rien : un back-office avec authentification, TOTP et gestion de médias.

  • aucun projet

    Base UI

    Le successeur de Radix par la même équipe, adopté sur mes projets récents pour ses primitives accessibles et non stylées. Je m'en sers comme socle de mon propre paquet de composants partagé entre les applications d'un monorepo.

  • aucun projet

    Better Auth

    Ma solution d'authentification actuelle, y compris pour sa gestion des passkeys. Je l'apprécie grandement pour sa modularité, sa documentation et les personnes qui travaillent dessus. J'ai découvert cette technologie à ses tout débuts et j'ai accroché rapidement.

  • aucun projet

    Django

    Le framework web de mon projet de mémoire : interface de visualisation des comptages cyclistes, avec l'ORM Django, l'administration générée et des graphiques Chart.js. C'était le bon choix pour un projet où la donnée comptait davantage que l'interface.

  • aucun projet

    Drizzle ORM

    Mon ORM quand je veux garder le SQL sous les yeux : le schéma est du TypeScript, les requêtes ressemblent à du SQL, et les migrations sont des fichiers versionnés que je relis avant de les appliquer.

  • aucun projet

    ElysiaJS

    Mon framework serveur sur Bun, choisi pour son typage de bout en bout.

  • aucun projet

    FastAPI

    Utilisé pour exposer une API de données géographiques : traitement avec pandas, géocodage avec geopy, documentation OpenAPI générée automatiquement à partir des annotations de type.

  • aucun projet

    Next.js

    Mon framework React de référence pour les applications orientées produit

  • aucun projet

    OpenCV

    Ma première approche du traitement d'image : détection de visages sur flux vidéo et sur photos, avec les cascades de Haar. C'est le projet qui m'a donné envie d'aller plus loin vers l'apprentissage profond.

  • aucun projet

    PixiJS

    Le moteur de rendu 2D de Nooki.

  • aucun projet

    Prisma

    L'ORM de mes applications Next.js, apprécié pour son schéma déclaratif et son client entièrement typé.

  • aucun projet

    PyTorch / YOLO

    La vision par ordinateur de mon projet de mémoire : détection d'objets avec YOLOv5, où j'ai contribué pour couvrir des cas non gérés sous Windows.

  • aucun projet

    Radix UI

    Les primitives accessibles sous mes interfaces Next.js : dialogues, menus, sélecteurs, infobulles. C'est ce qui m'a appris à quoi ressemble un composant réellement accessible (gestion du focus, navigation au clavier, attributs ARIA) avant de savoir le reconstruire moi-même.

  • aucun projet

    React

    Le socle de toutes mes interfaces depuis des années.

  • aucun projet

    Symfony

    Découvert en formation avec la construction d'un site complet : routing, contrôleurs, Doctrine et templates Twig. Une bonne introduction aux conventions d'un framework MVC structuré.

  • aucun projet

    Tailwind CSS

    Ma couche de style sur tous mes projets. Je m'en sers comme d'un langage d'assemblage au-dessus de mes propres tokens de design, pas comme d'un thème prêt à l'emploi.

  • aucun projet

    Tauri

    Utilisé en complément de Rust pour découvrir le langage.

  • aucun projet

    Zod

    Ma frontière de confiance : tout ce qui entre dans une application est validé par un schéma, et le type TypeScript en est déduit plutôt que déclaré deux fois.

  • aucun projet

    shadcn/ui

    Ma bibliothèque de composants, avec une nuance qui compte : le code est copié dans le projet, donc je le possède et je l'adapte.

Outils

  • aucun projet

    Biome

    Mon linter et formateur sur tous mes projets récents, en remplacement du couple ESLint + Prettier. Un seul outil, une seule configuration, et une exécution assez rapide pour tourner en pré-commit sans qu'on ait envie de le contourner.

  • aucun projet

    Bun

    Mon runtime JavaScript par défaut depuis un moment : exécution, gestionnaire de paquets, lanceur de tests et espaces de travail dans un seul binaire. J'utilise aussi ses API natives, notamment bun:sqlite, sans dépendance native à compiler, ce qui simplifie énormément l'image Docker finale.

  • aucun projet

    Claude Code

    J'ai commencé à l'utiliser depuis le terminal et j'ai fini dans l'application bureau. Les avancées que l'IA apporte dans le monde du développement et la rapidité qu'elle permet me rendent plus productif et me laissent me concentrer sur d'autres éléments importants : la réflexion, le choix des technologies, la rédaction, apporter une vision qui correspond plus à mes attentes. Et plus que tout, je n'ai plus cette limite que je pouvais avoir avant, quand je voulais commencer un projet sans savoir par où commencer.

  • aucun projet

    ESLint / Prettier

    L'outillage qualité que j'ai pratiqué avant Biome, et que je maintiens encore là où l'écosystème l'impose, comme mon site AdonisJS qui embarque la configuration officielle du framework. Je sais écrire une règle personnalisée quand une convention d'équipe mérite d'être automatisée.

  • aucun projet

    Git

    Commits conventionnels, branches courtes, historique lisible : je considère qu'un message de commit s'écrit pour la personne qui fera un git blame dans deux ans.

  • aucun projet

    Node.js

    Le runtime de mes projets qui reposent sur un écosystème que Bun ne couvre pas encore complètement.

  • aucun projet

    Vite

    Mon outil de build front dès qu'il n'y a pas de framework pour l'imposer : démarrage instantané, rechargement à chaud fiable, configuration minimale. Je l'utilise avec le plugin React et le plugin Babel qui active le React Compiler.

  • aucun projet

    Vitest

    Mon lanceur de tests sur les projets Vite et Next.js, avec une interface de suivi bien pratique en développement.

Infrastructure

  • aucun projet

    Dokploy

    Ma plateforme de déploiement auto-hébergée.

  • aucun projet

    Netlify

    Le premier service que j'ai utilisé pour mettre en ligne gratuitement mes sites.

  • aucun projet

    Redis

    Utilisé pour ce à quoi il excelle : de l'état éphémère partagé.

  • aucun projet

    SQLite

    Mon choix par défaut pour une application mono-utilisateur : zéro serveur, zéro latence réseau, un fichier à sauvegarder.

  • aucun projet

    Vercel

    Plateforme que j'ai utilisée après Netlify, permettant de gérer ma base de données et plusieurs déploiements.