Histoire : Dans le but de découvrir Django, j’ai développé une nouvelle version de mon portfolio avec ce framework. Toutes les données liées aux projets et aux compétences sont stockées dans une base SQLite, suffisante pour le volume de données et idéale pour explorer les possibilités offertes par les modèles Django.
Techno : Le portfolio a été développé avec Django 3.1 et Python 3.9, en utilisant SQLite pour le stockage des données. Pour le front-end, j’ai adapté un template Bootstrap et intégré la bibliothèque “Animate On Scroll” pour les animations. En production, je délivre le site comme contenu statique via Nginx, généré depuis l’environnement de développement, optimisant ainsi les performances de lecture tout en gardant la maintenance simple, sans recourir à uWSGI.
Voir en ligne : https://www.valentinporchet.fr/
Histoire : À notre arrivée sur Discord depuis TeamSpeak, nous avons rapidement identifié le besoin d’outils pour améliorer l’expérience sur le serveur : création de channels, gestion des droits, déplacement de membres en vocal, etc. Bien que des bots communautaires existent déjà, ma curiosité m’a poussé à développer mon propre bot pour gérer ces tâches.
Techno : Le bot a été développé avec Node.js, en utilisant principalement la bibliothèque Discord.js pour l’interaction avec Discord, et Winston pour le logging.
Code source : https://github.com/TeKrop/osmose-utility-bot
Histoire : En tant que Leader de la communauté Osmose, j’ai initié et piloté le développement d’un site web vitrine pour faciliter le recrutement et la gestion des membres. J’ai conçu plusieurs systèmes clés :
Techno : Pour le back-end, j’ai utilisé le framework PHP CodeIgniter 3 avec une base de données MariaDB. Pour le front-end, j’ai travaillé avec VanillaJS et plusieurs bibliothèques : FullCalendar pour le calendrier, Datatables pour des tableaux filtrables et triables côté administration, etc. Pour le design, j’ai utilisé Bootstrap 3 et réalisé un thème personnalisé aux couleurs de la communauté.
Histoire : Passionné par les mèmes “Shooting Stars”, j’ai eu l’idée de créer un générateur de vidéos personnalisées. Le site permet à l’utilisateur d’importer une image, qui est intégrée visuellement à une vidéo template en arrière-plan. Un lien unique est alors généré pour partager la vidéo personnalisée.
Techno : Pour le front-end, j’ai utilisé LESS et JavaScript, et côté serveur Node.js, à la fois pour la compilation front et pour gérer l’upload des fichiers en production.
Code source : https://github.com/TeKrop/shooting-stars-meme-generator
Voir en ligne : https://shooting-stars.tekrop.fr/
Histoire : Dans le cadre d’un projet personnel visant à récupérer les données des joueurs du jeu Overwatch, j’ai constaté qu’aucune API officielle n’était disponible et que les solutions communautaires existantes étaient soit obsolètes, soit insuffisantes. J’ai donc décidé de créer ma propre API, ce qui m’a permis de me former tout en répondant à ce besoin.
Techno : L’API a été développée avec Node.js, utilisant Express comme framework principal, Superagent pour récupérer les pages web, Cheerio pour parser le HTML, et SQLite pour la gestion du cache. Les données sont ensuite traitées et renvoyées au format JSON.
Crédits : Les données retournées par l'API proviennent de Blizzard.
Code source : https://github.com/TeKrop/overwatch-api
Histoire : Souhaitant approfondir ma maîtrise de Python et découvrir un nouveau framework, j’ai développé une API pour récupérer les données du jeu Overwatch de Blizzard en utilisant FastAPI.
Techno : L’objectif était de créer une API plus performante que la précédente, avec un temps de réponse optimisé malgré la lenteur des pages Blizzard. J’ai mis en place un système de cache avancé avec mise à jour en arrière-plan via Redis et nginx. Pour parser les pages HTML, j’ai utilisé Beautiful Soup (puis Selectolax), et j’ai centré le développement sur FastAPI afin d’obtenir une API claire et bien documentée (documentation Redoc automatique). Soucieux de la qualité du code, j’ai utilisé des outils comme ruff pour respecter la PEP-8, et j’ai écrit des tests unitaires avec un objectif de couverture à 100%.
Crédits : Les données retournées par l'API proviennent de Blizzard.
Code source : https://github.com/TeKrop/overfast-api
Voir en ligne : https://overfast-api.tekrop.fr/