Identif
Mise à jour : 28 août 2026
Identif représente un challenge technique complet, englobant le développement d’une application mobile et la création d’une architecture backend robuste pour structurer, vérifier et distribuer des données spécialisées issues de l’OSINT (renseignement d’origine sources ouvertes).
Il s’agit d’une plateforme globale dédiée à l’apprentissage et à la reconnaissance visuelle de véhicules (terrestres, aériens et maritimes) et de systèmes, avec une forte composante militaire.
Le projet
L’objectif d’Identif est d’offrir un outil accessible et portatif, aussi bien pour les passionnés que pour les professionnels (analystes de renseignement, instructeurs), permettant de s’entraîner à la reconnaissance visuelle.
Pour mener à bien ce projet, j’ai conçu une architecture divisée en deux grands axes :
- L’application mobile : Une interface utilisateur rapide, interactive et disponible hors-ligne, pensée pour l’apprentissage et l’évaluation continue.
- Le portail d’administration et le backend : Un espace sur-mesure dédié à la gestion d’un catalogue rigoureux (caractéristiques techniques, variantes, armements). Ce portail consolide les données OSINT récoltées de façon automatisée, tout en imposant une validation humaine stricte pour en garantir la fiabilité.
Ce projet m’a permis d’adopter une conception modulaire et d’aborder des défis passionnants comme la synchronisation de données sur mobile et l’automatisation de l’ingestion d’informations complexes.
La stack
- Application Mobile : React Native et Expo
- Backend et API : Bun et Express.js
- Base de données et ORM : PostgreSQL et Prisma
- Style et interface : NativeWind (Tailwind CSS) pour le mobile, React et Vite pour le tableau de bord web
- Gestion des données et cache : React Query
- Automatisation : n8n (pour le scraping et l’ingestion de données via webhooks)
Fonctionnalités
Application Mobile (Utilisateurs)
- Catalogue interactif : Exploration d’une base de données constamment mise à jour, incluant les spécificités techniques, les pays opérateurs et des galeries photos de haute qualité.
- Système de Quiz avancé : Plusieurs modes de jeu pour tester ses connaissances, dont un mode Rapide, un mode Personnalisé (filtres par domaine, difficulté ou origine) et un mode Survie exigeant un parcours sans faute.
- Hub d’apprentissage : En développement.
- Résilience hors-ligne : Mise en cache locale (via React Query) pour garantir que les véhicules déjà consultés restent accessibles, même lors de coupures réseau.
- Accessibilité bilingue : Application nativement traduite en français et en anglais (i18next).
Espace Administrateur
- Gestion stricte des fiches : Création et validation des profils de véhicules avec des schémas de données spécifiques à chaque domaine.
- Automatisation OSINT : Intégration de workflows automatisés (n8n) pour scraper des bases de données ouvertes (comme Wikipédia) et préparer le travail de vérification des administrateurs.
- Qualification des données : Outils de création et d’équilibrage des questions de quiz, basés sur un système de classification de la difficulté des images (facile, moyen, difficile) et la rareté de la plateforme basée sur le nombre d’unités construites (plus d’unités construites : commun, ex: T-72 ; moins d’unités construites : rare, ex: Buffalo MPV).
Retours d’expérience et conclusion
Ce projet, de par son ampleur, m’a confronté à plusieurs défis techniques intéressants :
-
Rigueur des données et typage : Les caractéristiques d’équipements militaires exigent une structuration rigoureuse. Modéliser des schémas de base de données distincts pour des domaines très différents (air, terre, mer) tout en gardant une cohérence globale a nécessité une conception minutieuse avec PostgreSQL et Prisma. La validation humaine reste au cœur du processus pour certifier la donnée avant son arrivée sur les téléphones des utilisateurs.
-
Optimisation mobile et hors-ligne : Assurer une expérience fluide sur mobile, particulièrement avec le chargement de nombreuses images en haute qualité et la gestion des déconnexions. La mise en place d’une stratégie de cache solide m’a permis d’offrir une véritable résilience à l’application.
-
Traitement de l’OSINT et flux automatisés : L’application reposant sur des sources ouvertes, l’intégration de webhooks pour automatiser la récupération de ces données brutes a considérablement accéléré le remplissage de la base. Cela m’a permis de me familiariser avec le traitement d’informations non structurées et de lier intelligemment des outils d’automatisation (n8n) à mon API Node.js.
-
Déploiement sur les stores : Le parcours de publication sur le Play Store, bien que complexe et exigeant, m’a permis d’apprendre à livrer un outil qui répond aux standards et exigences modernes. La phase de test, le contrôle de version, et l’automatisation CI/CD sont des sujets sur lesquels j’ai considérablement gagné en compétence.
Identif m’a permis de consolider mes compétences full-stack en les transposant avec succès dans l’écosystème mobile, créant ainsi un produit maîtrisé de bout en bout : de la récolte de données brutes issues de l’OSINT, jusqu’à leur restitution interactive à l’utilisateur final.