[{"data":1,"prerenderedAt":378},["ShallowReactive",2],{"projects-with-translations-en":3},[4,39,75,105,135,166,193,218,244,274,300,329,352],{"name":5,"primaryColor":6,"secondaryColor":7,"logoUrl":8,"categories":9,"sectors":11,"date":13,"shortDescription":14,"longDescription":15,"siteUrl":16,"stack":17,"repoUrl":22,"media1":23,"media2":24,"route":25,"tags":26,"metaTitle":36,"metaDescription":37,"isFavorite":38},"A2M Ôrizon Solution — Professional showcase website with CMS for social services company","#004aad","#ec9e0a","https://a.storyblok.com/f/290162729601023/192x192/d7d67031a1/a2m-logo.png",[10],"site-web",[12],"sante","2025-12-10 00:00","Professional showcase website with headless CMS enabling a social services company to present its activities, publish articles, and easily manage its content.","Context\n\nA2M ÔRIZON SOLUTION is a company specializing in outsourced social support for medico-social structures, businesses, and individuals.\n\nThe client needed a professional website to showcase its services, improve online visibility, and publish informative content for visitors.\n\nThe project was completed as a freelance assignment, from design to production. The goal was to create a modern, fast, and easily manageable website for the client.\n\nProblem\n\nBefore this project, the company lacked a structured website to present its business and generate leads.\n\nKey challenges included:\n\n* having a credible professional website\n* simplifying content management without technical skills\n* improving natural search engine optimization (SEO)\n* enabling regular publication of articles and resources.\n\nThe solution needed to be user-friendly for the client while maintaining strong technical and SEO performance.\n\nSolution\n\nThe website was developed using **Nuxt 4 and Vue 3**, leveraging a **headless CMS (Storyblok)** to allow the client to manage all content.\n\nThis architecture completely separates content management from the user interface, offering great flexibility to create or modify site pages.\n\nA continuous deployment system was also implemented so that every code change is automatically built and deployed.\n\nThe entire site was designed to be performant, responsive, and SEO-optimized.\n\nKey Features\n\n* showcase website presenting the company’s activities and services\n* headless CMS for editing all content (pages, blog, FAQ, images)\n* article and blog editor directly in the CMS\n* creation and modification of dynamic pages\n* complete SEO optimization (dynamic meta tags, sitemap, Open Graph)\n* SEO-friendly content structure\n* privacy-respecting analytics with Umami\n* responsive design for mobile, tablet, and desktop\n* automatic continuous deployment via GitHub Actions.\n\nResults\n\nThe website now enables the company to clearly present its business and publish informative content for visitors.\n\nThe client can easily update texts, images, and articles via the CMS without technical assistance.\n\nThe project also demonstrates the ability to design and deliver a complete freelance project, from concept and mockups to production and infrastructure setup.","https://a2m-orizon-solutionsocial.fr/",[18,19,20,21],"Nuxt.js","Vue.js","TypeScript","Tailwind CSS","https://github.com/Leoglme/a2m-orizon-solution","https://a.storyblok.com/f/290162729601023/1919x1079/e10d2ce017/capture-d-ecran-2026-03-21-005433.png","https://a.storyblok.com/f/290162729601023/1919x1079/be8f24c973/capture-d-ecran-2026-03-21-005512.png","/project/a2m-orizon-solution",[27,28,29,30,31,32,33,19,34,35],"showcase website","Nuxt","headless CMS","Storyblok","SEO","professional website","blog CMS","freelance","business website","A2M Ôrizon Solution — Nuxt showcase website with Storyblok CMS","Professional showcase website built with Nuxt and Storyblok for a social services company. Editable CMS, integrated blog, and full SEO optimization.",true,{"name":40,"primaryColor":41,"secondaryColor":42,"logoUrl":43,"categories":44,"sectors":47,"date":50,"shortDescription":51,"longDescription":52,"siteUrl":53,"stack":54,"repoUrl":58,"media1":59,"media2":60,"route":61,"tags":62,"metaTitle":73,"metaDescription":74,"isFavorite":38},"Izidoor — Sports & leisure booking SaaS platform","#5661f7","#ffffff","https://a.storyblok.com/f/290162729601023/904c43854d/izidoor.png",[10,45,46],"saas","application-metier",[48,49],"sport-loisirs","b2b","2025-07-01","SaaS booking and management platform for sports clubs and leisure facilities.","Context\n\nIzidoor is a SaaS booking and management platform for structures offering supervised activities: surf schools, water sports centres, ski schools, kayaking, fishing, or bike hire. The solution centralises online booking and day-to-day operations in one tool: session planning, activity and product catalogue, team and instructor management, invoicing, and on-site payment.\n\nEach structure has a booking module integrated directly into its website, so customers can book and pay for activities online themselves.\n\nProblem\n\nMany leisure facilities still manage bookings with separate tools: phone, spreadsheets, manual payments, and a separate schedule.\n\nThis fragmented setup leads to:\n\n* a heavy administrative load\n* booking errors\n* difficulty tracking real-time availability\n* lost bookings when customers cannot reach the structure\n\nFor seasonal activities like surf, ski, or kayak, these limits quickly become a drag on daily organisation.\n\nSolution\n\nIzidoor centralises everything in one platform.\n\nStructures can offer online booking directly from their site, manage their activities via an interactive schedule, and track orders, payments, and participants from the back-office.\n\nThe system supports:\n\n* online booking with Stripe payment\n* full or deposit payment\n* order and participant management\n* on-site payment via an integrated till\n* availability and activity period management\n\nThe platform is designed to work for surf schools, water sports centres, or independent instructors alike.\n\nKey features\n\n* online booking integrated into the website\n* interactive session and activity schedule\n* product and activity management\n* instructor and team management\n* participant and customer management\n* automatic invoicing\n* till for on-site payments\n* availability and seasonal period management\n\nIzidoor acts as a full management solution for sports and leisure facilities.\n\nResults\n\nIzidoor is now used by sports and leisure facilities in France to digitise booking management and simplify how they run their activities.","https://info.izidoor.io/",[18,19,20,55,56,57],"GraphQL","PostgreSQL","TailwindCSS","","https://a.storyblok.com/f/290162729601023/1024x768/cff1789567/1-photoroom-png-photoroom.webp","https://a.storyblok.com/f/290162729601023/720x540/284d22482a/izidoor-reservation-petit.webp","/project/izidoor",[63,64,65,66,67,68,69,70,71,72],"booking platform","booking management","sports and leisure","back-office","invoicing","scheduling","cash register","SaaS","businesses","France","Izidoor – Sports & Leisure Booking SaaS Platform","SaaS booking and back-office platform for sports and leisure facilities: scheduling, payments, invoicing, and team management. Reliable and scalable solution.",{"name":76,"primaryColor":77,"secondaryColor":78,"logoUrl":79,"categories":80,"sectors":82,"date":83,"shortDescription":84,"longDescription":85,"siteUrl":86,"stack":87,"repoUrl":90,"media1":91,"media2":92,"route":93,"tags":94,"metaTitle":103,"metaDescription":104,"isFavorite":38},"AI Pneumonia Detector – Pneumonia detection by AI","#00bbc0","#002742","https://a.storyblok.com/f/290162729601023/da0adb62e9/ai-pneumonia-detector.png",[10,81],"ia",[12],"2024-07-01","Web application using artificial intelligence to analyze chest X-rays and detect pneumonia. The project compares two machine learning approaches (CNN and KNN) and allows testing models online via an interactive interface.","Context\n\nPneumonia is a lung infection that can be detected from chest X-rays. Analysing these images usually requires the expertise of a healthcare professional, but machine learning techniques can now automate part of this detection.\n\nAI Pneumonia Detector is a medical AI application prototype that analyses chest X-rays to identify possible pneumonia. The project uses a dataset of 5856 real X-rays provided as part of the AI/Data engineering curriculum at Epitech.\n\nThe project aims to compare different machine learning approaches for medical image classification and explore their effectiveness in detecting lung pathologies.\n\nProblem\n\nMedical X-ray analysis generally relies on human expertise. However, in some contexts, decision-support tools based on artificial intelligence can:\n\n* speed up medical image analysis\n* assist healthcare professionals\n* identify visual anomalies in X-rays.\n\nThe challenge is to train a model capable of correctly distinguishing normal chest X-rays from those showing signs of pneumonia, while assessing the reliability of predictions.\n\nSolution\n\nThe application implements two machine learning approaches for X-ray classification:\n\nA CNN (Convolutional Neural Network) model specialised in image analysis.\n\nA KNN (K-Nearest Neighbors) model used as a baseline for comparison with a simpler machine learning approach.\n\nX-rays are preprocessed into grayscale images and resized before being used for model training.\n\nThe CNN model uses a convolutional neural network architecture to automatically extract relevant visual features from the images.\n\nA web interface then allows testing the models in real time.\n\nUsers can:\n\n* select sample X-rays\n* upload their own images\n* get an instant prediction (NORMAL or PNEUMONIA)\n* view the probabilities associated with each class.\n\nKey features\n\n* AI analysis of chest X-rays\n* comparison of two machine learning approaches (CNN vs KNN)\n* interactive web interface to test the models\n* custom image upload for analysis\n* display of classification probabilities\n* visualisation of performance metrics.\n\nResults\n\nBoth models were evaluated on an independent test set.\n\nThe CNN model achieves the best performance with:\n\n* accuracy of around 95%\n* an ROC curve with AUC close to 0.99\n\nThe KNN model reaches an accuracy of around 93%, showing that a simpler approach can already produce correct results, but remains less effective than a convolutional neural network for medical image analysis.\n\nThese results confirm the effectiveness of deep learning models for chest X-ray image classification.","https://ai-pneumonia-detector.dibodev.fr/",[19,20,57,88,89],"Python","FastAPI","https://github.com/Leoglme/ai-pneumonia-detector","https://a.storyblok.com/f/290162729601023/fd43e1b7d9/ai-pneumonia-detector-desktop.png","https://a.storyblok.com/f/290162729601023/238f568a5d/ai-pneumonia-detector-mobile.png","/project/ai-pneumonia-detector",[95,96,97,98,99,100,101,102],"pneumonia detection","medical imaging","chest radiography","health AI","assisted diagnosis","image classification","AI project","online demo","AI Pneumonia Detector — Chest X-ray analysis with AI","AI web application to analyze chest X-rays and detect pneumonia. Interactive demo with CNN and KNN model comparison and metrics visualization.",{"name":106,"primaryColor":107,"secondaryColor":108,"logoUrl":109,"categories":110,"sectors":111,"date":113,"shortDescription":114,"longDescription":115,"siteUrl":116,"stack":117,"repoUrl":121,"media1":122,"media2":123,"route":124,"tags":125,"metaTitle":106,"metaDescription":134,"isFavorite":38},"ApartEasy — Centralize and share your real estate listings","#d30a5e","#0e1621","https://a.storyblok.com/f/290162729601023/4519916f85/aparteasy.png",[10],[112],"immobilier","2023-05-22","Collaborative application to centralize, organize and share real estate listings when searching for housing, alone or in a group.","Context\n\nWhen searching for housing, listings are often scattered across multiple platforms: Leboncoin, SeLoger, estate agencies or social networks. Favorites are spread across different sites and it quickly becomes difficult to track interesting listings, compare properties or share finds with others.\n\nApartEasy is a web application designed to simplify this step by centralizing all real estate listings in a single workspace. The tool helps organize a housing search alone or in a group, for example as a couple or with roommates.\n\nEach search takes place in a dedicated space called a **space**, containing a name and a reference location used to calculate distances and travel times.\n\nProblem\n\nWhen searching for an apartment, several difficulties quickly arise:\n\n* listings are scattered across multiple sites\n* interesting links are hard to find again\n* comparing several properties efficiently is complicated\n* coordination with others (roommate, partner, friends) becomes confusing.\n\nCommunication often happens via messages or screenshots, making it hard to track listings clearly and efficiently.\n\nSolution\n\nApartEasy offers a simple interface to centralize all real estate listings in a single collaborative space.\n\nUsers can create a search, invite others to join and manually add listings found on different sites by simply pasting the URL and key details.\n\nEach listing can then be enriched with information such as price, utilities, floor area, number of rooms or availability date.\n\nAn interactive map shows the property location and estimates travel times to the search reference location using the Google Maps API.\n\nKey features\n\n* centralization of real estate listings via URL\n* creation of collaborative search spaces\n* user invitations for group work\n* 5-star property ratings by each user\n* average rating calculation to compare properties\n* listing status management (called, visited, available)\n* interactive map with travel time estimates\n* filters and sorting (price, city, name).\n\nThe aim is to make decision-making easier by allowing easy comparison of properties and tracking search progress.\n\nResults\n\nApartEasy was developed to address a real need during a shared apartment search. The application makes it possible to centralize all listings, track their status and collaborate effectively with other users when searching for a home.\n\nThe tool demonstrates how a collaborative web application can simplify organization and decision-making during a property search.","https://aparteasy.dibodev.fr/tutorial",[118,19,20,57,119,120],"AdonisJS","Docker","MariaDB","https://github.com/Leoglme/aparteasy","https://a.storyblok.com/f/290162729601023/973ab5c47f/aparteasy-properties.png","https://a.storyblok.com/f/290162729601023/25941152b0/aparteasy-invite-users.png","/project/aparteasy",[126,127,128,129,130,131,132,133],"apartment search","real estate listings","collaboration","roommate","interactive map","listing ratings","favorites management","French real estate","Collaborative web application to centralize and organize real estate listings. Compare properties, share your favorites and estimate travel times with an interactive map.",{"name":136,"primaryColor":137,"secondaryColor":42,"logoUrl":138,"categories":139,"sectors":142,"date":144,"shortDescription":145,"longDescription":146,"siteUrl":58,"stack":147,"repoUrl":152,"media1":153,"media2":154,"route":155,"tags":156,"metaTitle":136,"metaDescription":164,"isFavorite":165},"Cross-platform Reddit client — Tauri, Rust and Vue","#f13d1f","https://a.storyblok.com/f/290162729601023/22b532ab8e/redditech-logo.png",[140,141],"application-mobile","logiciel",[143],"reseaux-sociaux","2023-02-13","Cross-platform Reddit client prototype built with Tauri, Rust and Vue.js. The app replicates the official Reddit experience and runs on desktop and mobile from a single codebase.","Context\n\nReddit is a very popular community platform for browsing, sharing and commenting on content across thousands of communities called subreddits. The aim of this project was to develop a full Reddit client capable of replicating the official app experience while exploring modern cross-platform application architectures.\n\nThis project was carried out as part of the computer engineering curriculum at Epitech. It involves building a functional Reddit client based on the official Reddit API that can run on multiple platforms from a single codebase.\n\nProblem\n\nDeveloping applications for multiple platforms (desktop, mobile, web) often requires separate codebases, which increases development and maintenance complexity.\n\nTraditional frameworks like Electron make it possible to build desktop apps with web technologies, but often produce heavy, poorly optimized executables.\n\nThe challenge of this project was therefore to design a performant Reddit client that could run on multiple platforms while remaining lightweight and secure.\n\nSolution\n\nThe application uses **Tauri** to create a lightweight Rust-based desktop executable while keeping a user interface built with Vue.js.\n\nTauri makes it possible to build performant cross-platform applications with much lighter executables than those produced by solutions like Electron.\n\nThe user interface faithfully replicates the Reddit browsing experience and relies on Reddit's official APIs (REST and GraphQL) to fetch data and interact with the platform.\n\nTo extend the application to mobile, the project also uses **Capacitor**, allowing the same codebase to be reused.\n\nKey features\n\n* authentication via Reddit OAuth\n* feed and subreddit navigation\n* comment browsing\n* post creation\n* voting (upvote / downvote)\n* content and community search\n* user profile management\n* interface matching the official Reddit experience.\n\nThe application runs on desktop (Windows, macOS) and can also be adapted for mobile thanks to the hybrid architecture.\n\nResults\n\nThis project demonstrates the possibility of developing a full cross-platform application from a single codebase by combining:\n\n* Rust and Tauri for performant desktop applications\n* Vue.js for the user interface\n* Capacitor for extending to mobile.\n\nIt provides an interesting testing ground for OAuth authentication, external API integration and modern hybrid application architecture.",[148,149,19,150,151,55],"Tauri","Rust","SCSS","Capacitor","https://github.com/Leoglme/tauri-reddit-mobile-app","https://a.storyblok.com/f/290162729601023/f2694aa39b/reddit-clone-gif.gif","https://a.storyblok.com/f/290162729601023/043f5f6c5d/reddit-home.png","/project/reddit-tauri-app",[157,158,159,160,161,162,163],"Reddit application","unofficial client","multi-platform","desktop and mobile","OAuth authentication","user experience","content navigation","Cross-platform Reddit client prototype built with Tauri, Rust and Vue.js. OAuth authentication, subreddit navigation, comments and post creation from a single codebase.",false,{"name":167,"primaryColor":168,"secondaryColor":169,"logoUrl":170,"categories":171,"sectors":172,"date":173,"shortDescription":174,"longDescription":175,"siteUrl":176,"stack":177,"repoUrl":179,"media1":180,"media2":181,"route":182,"tags":183,"metaTitle":167,"metaDescription":192,"isFavorite":165},"Epitalk — Real-time IRC-style Chat Application with Mercure and SSE","#8372f3","#101623","https://a.storyblok.com/f/290162729601023/200x200/9bc55e9dd2/122271528.png",[10],[143],"2023-02-01 00:00","Real-time chat application inspired by the IRC protocol, enabling discussions in public or private channels directly from the browser, with instant updates via Mercure and Server-Sent Events.","Contexte\n\nEpitalk is a chat application inspired by classic IRC server behavior, allowing users to engage in real-time discussions within public channels or via private messages.\n\nThe project was developed as part of an academic assignment at Epitech, with the goal of designing a complete real-time messaging application accessible directly from a web browser.\n\nRather than using WebSockets as in most modern chat applications, the project leverages **Mercure** and **Server-Sent Events (SSE)** to explore an alternative approach for handling real-time communications between server and clients.\n\nThe application is fully functional and publicly accessible: users can simply choose a username and immediately join the chat.\n\nProblème\n\nBuilding a real-time messaging application presents several technical challenges:\n\n* synchronizing messages across multiple users and devices\n* managing the creation and administration of discussion channels\n* maintaining the state of connected users\n* transmitting events without page reloads.\n\nTraditional solutions typically rely on WebSockets, but alternative architectures exist for handling real-time data streams.\n\nThe project’s objective was to design a modern chat application while experimenting with an architecture based on **Mercure** and **Server-Sent Events**.\n\nSolution\n\nEpitalk is built on a real-time architecture combining an AdonisJS backend and the Mercure protocol to broadcast events to clients.\n\nClients connect to an SSE stream to receive instant updates from the server: new messages, user arrivals, channel creation, or status changes.\n\nThe frontend interface is developed with **Vue 3 and TypeScript**, using **Pinia** for state management, delivering a smooth experience akin to modern chat applications.\n\nUsers can simply enter a username to join the server and start chatting immediately.\n\nFonctionnalités principales\n\n* instant connection to the chat via username\n* public discussion channels (channels)\n* private messaging between users\n* creation and deletion of channels\n* list of connected users in a channel\n* classic IRC commands (/join, /list, /users, /nick, /create, /delete, /msg, /leave)\n* integrated bot to handle commands\n* real-time updates for messages and events\n* online user detection\n* responsive interface compatible with mobile and desktop.\n\nRésultats\n\nEpitalk demonstrates the implementation of a complete real-time chat application using an architecture based on **Mercure and Server-Sent Events**.\n\nThe project highlights:\n\n* real-time event handling on client and server sides\n* instant data synchronization across multiple users\n* the design of a modern chat interface with Vue.js.\n\nIt also serves as a demonstration of an alternative architecture to WebSockets for applications requiring real-time updates.","https://epitalk.dibodev.fr/",[19,20,178,150,118,120,119],"Pinia","https://github.com/epitalk","https://a.storyblok.com/f/290162729601023/1919x1079/17cffe2675/epitalk.png","https://a.storyblok.com/f/290162729601023/389x851/c6de8d1fa4/irc-mobile.png","/project/epitalk",[184,185,186,187,188,19,118,189,190,191],"real-time chat","IRC","Mercure","Server-Sent Events","web messaging","SSE","chat application","real-time messaging","Real-time chat application inspired by IRC, built with Vue.js and AdonisJS. Instant messaging, public channels, private messages, and real-time synchronization via Mercure and Server-Sent Events.",{"name":194,"primaryColor":195,"secondaryColor":196,"logoUrl":197,"categories":198,"sectors":199,"date":201,"shortDescription":202,"longDescription":203,"siteUrl":58,"stack":204,"repoUrl":205,"media1":206,"media2":207,"route":208,"tags":209,"metaTitle":194,"metaDescription":217,"isFavorite":38},"EpiTrip — Natural language travel planning with AI","#2D6A4F","#131A20","https://a.storyblok.com/f/290162729601023/7c7fd5539c/epitrip-logo.png",[10,81],[200],"voyage-transport","2023-01-10","Travel planning assistant using natural language processing to understand a request in French, extract departure and arrival cities, then automatically compute the optimal route from SNCF data.","Context\n\nPlanning a train journey usually means switching between several interfaces and manually entering departure and arrival cities. Yet users naturally express their needs in sentences such as: \"I'm leaving from Rennes to go to Biarritz\".\n\nEpiTrip is a travel planning assistant that can interpret such natural language phrases and automatically turn the request into a usable itinerary.\n\nThe project combines **natural language processing (NLP)** and route optimisation to understand the user's request and compute the best journey from SNCF transport data.\n\nProblem\n\nClassic journey planners rely on structured forms where the user has to manually select each piece of information.\n\nThis approach does not always match the natural way users express their needs. Moreover, understanding free-form text raises several technical challenges:\n\n* detecting whether the sentence is actually a travel request\n* identifying departure and arrival cities\n* correctly handling language variations\n* then computing an optimal route from the rail network data.\n\nSolution\n\nEpiTrip implements a full pipeline combining artificial intelligence and graph algorithms to process travel requests.\n\nThe system works in several steps:\n\n1. **Language detection** to check that the sentence is in French using FastText.\n2. **Intent classification** with a fine-tuned DistilBERT model to identify journey requests.\n3. **City extraction** via a named entity recognition model based on CamemBERT.\n4. **Optimal route computation** using Dijkstra's algorithm applied to SNCF data (GTFS).\n\nThe rail data includes stations, routes and timetables, making it possible to compute a realistic itinerary between two cities.\n\nA web interface then displays the result on an **interactive map**, with journey stages and a route summary.\n\nKey features\n\n* natural language journey request input\n* automatic extraction of departure and arrival cities\n* intent classification based on an NLP model\n* optimal route computation with Dijkstra's algorithm\n* use of SNCF transport data\n* journey display on an interactive map\n* voice recognition to dictate a journey request.\n\nThe user can for example say or type:\n\n> \"I want to go from Rennes to Biarritz\"\n\nand the application automatically identifies the cities, computes the best route and displays the result on the map.\n\nResults\n\nEpiTrip shows how a pipeline combining **NLP, entity extraction and route optimisation** can turn a natural language request into a usable journey.\n\nThe project highlights the practical use of transformer models in an application context and how AI techniques can simplify the interaction between users and transport systems.",[18,19,20,57,118,88,89],"https://github.com/Leoglme/nlp_travel_order_resolver","https://a.storyblok.com/f/290162729601023/1920x1080/970c853fd2/home-work.gif","https://a.storyblok.com/f/290162729601023/1919x1079/c2f84b51e2/map.png","/project/epitrip",[210,211,212,213,130,214,215,216],"travel planner","SNCF routes","natural language","voice recognition","roadtrip","route search","France tourism","Travel planning assistant using NLP to understand natural language requests, extract cities and compute the optimal route from SNCF data with display on an interactive map.",{"name":219,"primaryColor":220,"secondaryColor":42,"logoUrl":221,"categories":222,"sectors":223,"date":225,"shortDescription":226,"longDescription":227,"siteUrl":228,"stack":229,"repoUrl":230,"media1":231,"media2":232,"route":233,"tags":234,"metaTitle":242,"metaDescription":243,"isFavorite":165},"Primea RP — Official GTA 5 RolePlay server website","#a80400","https://a.storyblok.com/f/290162729601023/583b98dc37/primea-logo.png",[10],[224],"gaming","2022-04-24","Official website for the Primea RP GTA 5 RolePlay server, designed to present the project, guide new players and make it easy to join the community.","Context\n\nPrimea RP is a **FiveM-based GTA 5 RolePlay server**, bringing together a French-speaking community around an immersive roleplay experience.\n\nTo welcome new players and structure the community, the server needed a website that centralised all essential information: server presentation, rules, guides and procedures for joining the community.\n\nThe aim of the site was to create a clear, accessible entry point for new players while strengthening the server's visibility on listing platforms such as **Top-Serveurs**.\n\nProblem\n\nGTA RP servers regularly attract new players, but the lack of structured information can make integration difficult.\n\nNew members often have to search for:\n\n* server rules\n* procedures for joining the community\n* specific keybindings and commands\n* useful resources to get started.\n\nWithout a central information hub, these elements are scattered across Discord, forums or messages, which can create confusion for new players.\n\nSolution\n\nThe Primea RP site was designed as an **onboarding platform for the server**, enabling players to quickly discover the server's universe and understand how to take part.\n\nThe site centralises all the information needed to join the community and start playing under good conditions.\n\nIt includes in particular:\n\n* a presentation of the server and its universe\n* roleplay rules\n* procedures for joining the server\n* game keybindings and commands\n* useful resources for new players\n* links to community platforms such as Discord.\n\nThe site architecture was designed to provide simple, intuitive navigation and easy access to the information that matters most to new members.\n\nKey features\n\n* server and universe presentation\n* full RP server rules\n* guides and resources for players\n* explanation of specific commands and keybindings\n* procedure for joining the server\n* direct access to the community Discord.\n\nThe site also serves as a communication channel for the community and helps centralise important server information.\n\nResults\n\nThe Primea RP server has built an active community with around **200 players** and up to **80 players connected at the same time**.\n\nThe site has helped structure the welcome for new players, explain server rules and simplify the process of joining the community.\n\nThis project demonstrates the importance of a clear, effective website in supporting the growth of a gaming community.","https://gtarp.dibodev.fr/",[18,19,20,150],"https://github.com/Leoglme/Primea-rp","https://a.storyblok.com/f/290162729601023/1919x1079/f2d75d1b31/gtarp-website-landing.png","https://a.storyblok.com/f/290162729601023/437x846/76ab072143/gtarp-mobile.png","/project/primea-rp",[235,236,237,238,239,240,241,72],"GTA 5 RP","roleplay server","community","rules","onboarding","video game","player resources","Primea RP — Official French GTA RP FiveM server website","Official website for the French GTA 5 RolePlay FiveM server Primea RP: server presentation, rules, guides and Discord access to join the roleplay experience.",{"name":245,"primaryColor":246,"secondaryColor":247,"logoUrl":248,"categories":249,"sectors":250,"date":252,"shortDescription":253,"longDescription":254,"siteUrl":255,"stack":256,"repoUrl":58,"media1":260,"media2":261,"route":262,"tags":263,"metaTitle":272,"metaDescription":273,"isFavorite":165},"Stockpme — Stock and inventory management software for SMEs","#86b91e","#f9f9f9","https://a.storyblok.com/f/290162729601023/52280e2cf9/logo-stockpme.png",[10,45,46],[251,49],"logistique","2022-03-01","SaaS stock management software designed for SMEs: product tracking, inventory movement management and QR label generation to improve traceability.","Context\n\nStockpme is a SaaS application designed to help **small businesses and SMEs manage their stock and inventories** in a simple, reliable way.\n\nThe project was developed within **Kodeva**, in collaboration with the company Breizhtic, which handled distribution of the software and associated equipment to client companies.\n\nThe aim of the solution is to centralise product, stock movement and warehouse management in a single interface, while simplifying field operations through a professional label system with **QR codes**.\n\nThe software is now used by companies to manage their inventory and track their products.\n\nProblem\n\nMany SMEs still manage their stock with poorly suited tools: spreadsheets, manual systems or overly complex software.\n\nThis setup can lead to:\n\n* inventory errors\n* difficulty tracking stock movements\n* stockouts or excess stock\n* limited traceability of logistics operations.\n\nTeams need a simple tool to manage products and their movements while keeping a clear view of inventory.\n\nSolution\n\nStockpme offers a **browser-based stock management web application** that centralises all inventory-related operations.\n\nCompanies can create product sheets, track stock movements and manage their warehouses from a simple interface.\n\nThe software also includes a **professional label generation system with QR codes**, enabling quick product identification and access to associated information.\n\nThe QR code improves traceability and helps identify products during stock management operations.\n\nKey features\n\n* creation and management of product sheets\n* stock and inventory level management\n* stock movements (in, out, corrections, inventories)\n* transfers between locations or warehouses\n* generation of professional labels with QR codes\n* product tracking and movement history\n* stock evolution statistics and charts\n* after-sales service intervention management.\n\nThe platform is designed to simplify day-to-day logistics operations and improve inventory reliability.\n\nResults\n\nStockpme is used by companies to manage their products and inventories.\n\nThe software helps centralise stock-related information, improve product traceability and simplify management operations for teams.","https://www.stockpme.fr/",[18,19,20,257,258,259],"C#",".NET","MongoDB","https://a.storyblok.com/f/290162729601023/1280x720/c12ae9eb92/ezgif-7000e57014744f85.gif","https://a.storyblok.com/f/290162729601023/1280x720/c95b778ddf/ezgif-7ae7bb7a27adf67b.gif","/project/stockpme",[264,265,266,267,268,269,270,271],"inventory management","inventory","traceability","QR codes","warehouses","stock movements","SMEs","logistics","Stockpme — Stock management software for SMEs","SaaS stock management software for SMEs: product tracking, inventory movements, QR labels and statistics to improve traceability and logistics management.",{"name":275,"primaryColor":276,"secondaryColor":247,"logoUrl":277,"categories":278,"sectors":279,"date":281,"shortDescription":282,"longDescription":283,"siteUrl":284,"stack":285,"repoUrl":58,"media1":287,"media2":288,"route":289,"tags":290,"metaTitle":275,"metaDescription":299,"isFavorite":165},"Gest-Time — Work time management software for businesses","#3b51d5","https://a.storyblok.com/f/290162729601023/fa1f59bbe3/logo-management-times.png",[10,46,141],[280,49],"productivite","2022-01-15","SaaS software enabling businesses to track employee work time, manage timesheets and centralise weekly validation.","Context\n\nGest-Time is a work time management SaaS application developed within **Kodeva**, in collaboration with the company Breizhtic, which handled distribution of the solution to small businesses and SMEs.\n\nThe project was designed to replace paper timesheets and scattered Excel files with a centralised platform for tracking team working hours.\n\nThe application is used by companies to record hours worked, track project progress and simplify timesheet validation.\n\nIt was designed to be easy to use on **tablets and computers**, including by field teams with limited familiarity with IT tools.\n\nProblem\n\nMany companies still track hours using poorly suited systems: paper sheets, spreadsheets or non-specialist tools.\n\nThese methods make it difficult to:\n\n* capture working hours reliably\n* track time spent on projects\n* validate timesheets\n* analyse data for team management.\n\nManagers need a simple tool to centralise information and quickly spot anomalies.\n\nSolution\n\nGest-Time offers a web application that lets employees **enter their working hours by project, task or site**, directly from a clear interface suited to tablets.\n\nEmployees record their hours day by day, then submit their weekly timesheet for validation.\n\nManagers have a **centralised weekly view** to validate, correct or reject timesheets as needed.\n\nThe system also includes automatic alerts to flag anomalies such as missing hours or overruns.\n\nKey features\n\n* time entry by day, project, task or site\n* interface optimised for tablet and field use\n* absence management (leave, RTT, etc.)\n* weekly timesheet validation workflow\n* alerts on hour anomalies\n* user and role management\n* project, site and task management\n* detailed reporting by project, task or employee\n* export to Excel or PDF\n* statistics and reports for activity tracking.\n\nThe software also allows certain advanced features to be enabled according to business needs, such as travel management, business mileage or hourly cost tracking.\n\nResults\n\nGest-Time enables companies to centralise work time tracking, improve timesheet reliability and simplify hour validation by managers.\n\nThe software provides better visibility on team activity and makes it easier to analyse data for project tracking.","https://www.kodeva.fr/nos-produits/saisie-des-temps",[18,19,20,257,258,259,286],"Microsoft SQL Server (MSSQL)","https://a.storyblok.com/f/290162729601023/3840x2160/9e36980b9f/mockup-day-view-phone.png","https://a.storyblok.com/f/290162729601023/3464x2233/bf1f0c5b0c/report-view.png","/project/gestion-temps",[291,292,293,294,295,296,297,298],"time tracking","timesheets","weekly validation","productivity","HR reports","site management","timesheet","hourly control","SaaS work time tracking software: hours entry by project, weekly validation, anomaly alerts and reporting to manage team activity.",{"name":301,"primaryColor":302,"secondaryColor":303,"logoUrl":304,"categories":305,"sectors":306,"date":307,"shortDescription":308,"longDescription":309,"siteUrl":310,"stack":311,"repoUrl":316,"media1":317,"media2":318,"route":319,"tags":320,"metaTitle":327,"metaDescription":328,"isFavorite":165},"Nextodo — Trello-style Kanban application built with Next.js","#F5A623","#1F1F1F","https://a.storyblok.com/f/290162729601023/1097a7981a/nextodo-logo.png",[10],[280],"2021-11-07","Task management application inspired by Trello for organising tasks in Kanban columns with drag-and-drop.","Context\n\nNextodo is a web-based task management application inspired by Kanban interfaces such as Trello.\n\nThe project was carried out as part of a technical exercise aimed at exploring modern front-end development best practices with **React and Next.js**, as well as setting up unit and end-to-end tests.\n\nThe goal was to design a fluid interface for visually organising tasks and manipulating elements via **drag-and-drop**.\n\nProblem\n\nTask management quickly becomes difficult when projects are not organised visually.\n\nKanban-style tools help structure tasks into columns and quickly identify:\n\n* tasks to do\n* tasks in progress\n* completed tasks.\n\nThe project aimed to replicate this logic while putting modern front-end development concepts into practice.\n\nSolution\n\nNextodo offers a simple interface for creating columns and organising tasks as cards within them.\n\nUsers can reorganise elements using a **drag-and-drop** system, making it easier to prioritise and track progress.\n\nThe application is built on **Next.js and React**, with state management via Redux and the **react-beautiful-dnd** library for smooth movement of cards and columns.\n\nKey features\n\n* creation and deletion of Kanban columns\n* creation, editing and deletion of tasks\n* task organisation by drag-and-drop\n* moving cards between columns\n* task status management (to do / done)\n* task display filters\n* quick deletion of completed tasks.\n\nEach column also has filters to show only certain tasks by status.\n\nResults\n\nNextodo is a practical demonstration of building a modern Kanban interface with React.\n\nThe project highlights:\n\n* front-end application state management\n* manipulating dynamic elements via drag-and-drop\n* designing interactive, modular interfaces.","https://nextodo.vercel.app/",[312,313,314,315],"Next.js","React","JavaScript","CSS","https://github.com/Leoglme/nextodo","https://a.storyblok.com/f/290162729601023/1280x635/b2d2c95fbf/ezgif-72de7f24ce6e99a4.gif","https://a.storyblok.com/f/290162729601023/1897x949/4684bdf8b5/capture-d-ecran-2026-01-30-014028.png","/project/nextodo",[321,322,323,324,325,326],"to-do list","kanban","drag-and-drop","task organization","personal productivity","project management","Nextodo — Trello-style Kanban application with React and Next.js","Trello-inspired Kanban app: columns, cards and drag-and-drop to organise your tasks. React project built with Next.js and Redux.",{"name":330,"primaryColor":331,"secondaryColor":332,"logoUrl":333,"categories":334,"sectors":335,"date":336,"shortDescription":337,"longDescription":338,"siteUrl":339,"stack":340,"repoUrl":342,"media1":58,"media2":58,"route":343,"tags":344,"metaTitle":330,"metaDescription":351,"isFavorite":165},"Driving School — Driving school management and lesson scheduling software","#4f46e5","#f1f5f9","https://a.storyblok.com/f/290162729601023/5f2df1615b/logo-driving-school.png",[10,46,141],[200,49],"2021-09-01","Web application for driving school management: schedule driving lessons, manage students and instructors, and track training hours.","Context\n\nDriving School is a web-based management application for driving schools, designed to organise driving lessons, manage students and centralise appointment scheduling.\n\nThe project was carried out as part of an academic project aimed at designing a **complete business application with user management, scheduling and business logic**.\n\nThe goal was to create a tool capable of replacing manual schedule organisation and providing a clear view of available driving hours for each student.\n\nProblem\n\nDriving schools have to manage on a daily basis:\n\n* enrolled students\n* available instructors\n* remaining driving hours\n* appointment scheduling.\n\nWhen this information is managed manually or across several tools, it can lead to:\n\n* scheduling errors\n* timetable conflicts\n* difficulty tracking remaining driving hours.\n\nAdministrative teams need a centralised system to organise lessons effectively and track student progress.\n\nSolution\n\nDriving School offers a web application that allows driving school staff to schedule and manage driving lessons from a central calendar.\n\nSlots are created by staff (administrators, secretaries or instructors) by linking a student, an instructor and a time slot.\n\nThe system automatically checks that the student still has enough driving hours available before allowing a slot to be created.\n\nEach appointment automatically updates the count of driving hours completed.\n\nThe application also includes an authentication system with different user roles to restrict access to features according to profile.\n\nKey features\n\n* user account management with roles (admin, secretary, instructor, student)\n* creation and management of students and staff\n* lesson scheduling via an interactive calendar\n* linking appointments to student and instructor\n* automatic checking of remaining driving hours\n* tracking of hours completed and remaining per student\n* editing and moving slots by drag-and-drop\n* user account and profile management\n* automatic emails (account creation and password reset).\n\nStudents have access to view their schedule and remaining driving hours.\n\nResults\n\nThis project demonstrates the design of a **complete business application with user management, scheduling and sector-specific business logic**.\n\nIt illustrates the implementation of:\n\n* an authentication system with roles\n* business logic for scheduling\n* a clear management interface for administrative teams.","https://driving-school.dibodev.fr/",[19,20,57,88,341],"Flask","https://github.com/Leoglme/driving-school","/project/driving-school",[345,346,347,348,349,350],"driving school","schedule management","appointments","students and instructors","organization","business application","Web application for driving school management: students and instructors, driving lesson scheduling and tracking of remaining hours.",{"name":353,"primaryColor":354,"secondaryColor":355,"logoUrl":356,"categories":357,"sectors":358,"date":359,"shortDescription":360,"longDescription":361,"siteUrl":362,"stack":363,"repoUrl":365,"media1":366,"media2":367,"route":368,"tags":369,"metaTitle":376,"metaDescription":377,"isFavorite":165},"Connect Four — Connect Four game playable online on desktop and mobile","#c30000","#141214","https://a.storyblok.com/f/290162729601023/8fad2388f2/puissance4-logo.png",[10],[224],"2021-06-12","Web version of the classic Connect Four game with responsive interface, player customization and complete game logic in JavaScript.","Context\n\nConnect Four is a web adaptation of the classic board game that lets two players compete directly in the browser.\n\nThe project was carried out as part of an academic exercise aimed at developing an interactive game in **pure JavaScript**, with a responsive interface and complete client-side game logic.\n\nThe goal was to design a simple, accessible web application playable on different devices while implementing the game's core mechanics.\n\nProblem\n\nRecreating a classic board game in a web application requires managing several elements:\n\n* the state of the game board\n* player actions\n* checking win conditions\n* user interface interaction.\n\nThe challenge is to implement reliable logic that correctly detects winning alignments while keeping the interface smooth and intuitive.\n\nSolution\n\nThe application is built on a JavaScript implementation of the game logic, with an algorithm that checks horizontal, vertical and diagonal alignments after each move.\n\nPlayers can customise their avatar and piece colour before starting a game.\n\nThe game board is fully interactive: clicking a column triggers an animated drop of the piece to the available position.\n\nThe interface is responsive so the game can be played on computer, mobile or tablet.\n\nKey features\n\n* Connect Four playable directly in the browser\n* two-player mode on the same device\n* avatar and piece colour customization\n* automatic win detection (horizontal, vertical, diagonal)\n* piece drop animation\n* responsive interface compatible with mobile and tablet\n* multiple rounds between players.\n\nResults\n\nThis project demonstrates the implementation of **complete game logic in JavaScript**, as well as the creation of an interactive, responsive interface.\n\nIt highlights client-side game state management, DOM manipulation and the implementation of simple algorithms to detect win conditions.","https://puissance4.dibodev.fr/",[364,315,314],"HTML","https://github.com/Leoglme/puissance4","https://a.storyblok.com/f/290162729601023/1280x633/07ce6bd38f/ezgif-792a1f8b2f7d86f1.gif","https://a.storyblok.com/f/290162729601023/389x846/4ad92f4a70/capture-d-ecran-2026-01-30-020403.png","/project/puissance4",[370,371,372,373,374,375],"web game","online connect four","local multiplayer","mobile responsive","customization","entertainment","Connect Four — Connect Four game playable online on mobile and desktop","Connect Four playable directly in the browser: responsive interface, piece animation and complete win logic in JavaScript.",1774654356668]