Florian Depatin
Plugin Minecraft
REST API sécurisée
WebCraftAPI, un plugin Spigot qui expose une API web sécurisée pour connecter un serveur Minecraft à des outils externes.

Plugin Spigot public permettant d’exposer des API sécurisées pour interagir avec un serveur Minecraft, avec authentification, Swagger / OpenAPI et plus de 1000 téléchargements sur SpigotMC.

Plugin MinecraftREST API

Présentation détaillée

Informations complémentaires sur le projet, son rôle, ses enjeux et sa construction.

Mon rôle

J’ai conçu, développé, publié et maintenu WebCraftAPI comme un projet personnel destiné à la communauté Minecraft / Spigot.

Le projet m’a permis de travailler sur un cas concret d’intégration entre un serveur de jeu et des outils web externes, avec des problématiques d’API, d’authentification, de permissions, de documentation et de compatibilité avec l’écosystème Minecraft.

Au-delà du plugin lui-même, WebCraftAPI a aussi nécessité un travail de publication, de documentation, de support utilisateur et d’évolution progressive en fonction des retours de la communauté.

Travaux réalisés

  • Développement d’un plugin Spigot en Java.
  • Exposition d’une REST API pour interagir avec un serveur Minecraft.
  • Mise en place d’un système d’authentification par JWT.
  • Gestion d’utilisateurs API avec rôles et permissions.
  • Création d’endpoints pour récupérer des informations serveur.
  • Création d’endpoints liés aux joueurs, inventaires, actions, whitelist, bans, mondes et messages broadcast.
  • Intégration d’une documentation Swagger directement accessible depuis le plugin.
  • Génération de spécifications OpenAPI.
  • Mise en place d’une logique de configuration pour adapter le comportement du plugin.
  • Publication du projet sur SpigotMC.
  • Rédaction de documentation et suivi des retours utilisateurs.
  • Évolution du plugin sur plusieurs versions.
  • Réécriture complète du projet en version 4.0.0 pour améliorer la maintenabilité et les performances.
  • Ajout d’un API Tracker pour suivre l’usage de l’API sur un dashboard dédié.

Points techniques notables

WebCraftAPI repose sur une idée simple : rendre un serveur Minecraft interopérable avec des outils web grâce à une API HTTP sécurisée.

Le projet combine plusieurs enjeux techniques :

  • intégration avec l’API Spigot ;
  • exposition d’endpoints REST ;
  • sécurisation des appels par authentification JWT ;
  • gestion des rôles et permissions ;
  • sérialisation des données serveur ;
  • documentation interactive avec Swagger ;
  • spécification OpenAPI ;
  • gestion de compatibilité avec différentes versions de Minecraft ;
  • prise en compte des retours utilisateurs ;
  • réécriture technique pour améliorer la base existante.

La version 4.0.0 marque une évolution importante du projet, avec une réécriture complète et l’utilisation de Javalin pour remplacer une gestion de requêtes plus artisanale par une base plus maintenable.

Ce que ce projet démontre

WebCraftAPI montre ma capacité à publier un outil technique utilisé par d’autres développeurs ou administrateurs de serveurs, au-delà d’un usage purement personnel.

Le projet démontre aussi ma capacité à concevoir une API, sécuriser ses accès, documenter son utilisation et faire évoluer un outil en fonction des limites rencontrées et des retours de la communauté.

Il illustre enfin une partie plus ancienne mais importante de mon parcours : ma capacité à apprendre par la pratique, à explorer différents écosystèmes techniques et à transformer une idée en projet public réellement utilisé.

JavaREST APISpigotJWTSwaggerProjet public
Ce projet vous donne envie d'échanger ?

Parlons architecture, produit, qualité logicielle ou opportunités autour d'un projet web/SaaS.