Projet principal

Portfolio Écosystème

Ce projet est la pièce centrale de mon portfolio.
Il illustre ma capacité à concevoir un écosystème complet autour d’une même base fonctionnelle :
site public, backend API, application desktop et application mobile.

Mockup global des interfaces web, desktop et mobile du projet portfolio
4 surfaces produitweb public, backend, desktop et mobile
1 logique métier unifiéecontenus, messages, documents et administration
Vision fullstackinterface, données, APIs, distribution et usage

Vision du projet

L’objectif n’était pas seulement de créer un portfolio esthétique, mais de construire un produit complet capable de présenter mon profil, centraliser mes contenus, administrer les données et créer un lien direct entre visibilité publique et pilotage interne.

Pour un recruteur, ce projet montre concrètement ma capacité à penser un sujet comme un écosystème logiciel : conception de l’interface publique, structuration des APIs, modélisation des données, outils d’administration et prise en compte des usages sur plusieurs environnements.

Les briques de l’écosystème

Site public web

Une vitrine publique en Next.js orientée SEO, avec des pages éditoriales, une présentation des projets, un contact et des objectifs de conversion.

Backend API

Une couche backend structurée autour des projets, des messages, des documents, des tags, de l’authentification et des notifications push.

Application desktop

Un back-office Electron / React pour piloter les contenus, consulter les messages et administrer les ressources avec davantage de confort.

Application mobile

Une application React Native / Expo pour garder une vision mobile du projet et permettre certains usages d’administration en situation nomade.

Ce que ce projet démontre

  • Expérience multi-interface

    Le projet relie une surface publique, un back-office desktop et une application mobile autour d’une même base fonctionnelle.

    Application concrète dans un produit réel
  • Architecture cohérente

    Les modèles métier, les contenus et les flux sont organisés de façon homogène pour éviter les duplications et maintenir une logique claire.

    Application concrète dans un produit réel
  • Événements et feedback

    Les notifications push permettent de faire remonter certains événements importants, comme les nouveaux messages ou les téléchargements du CV.

    Application concrète dans un produit réel
  • Prise en compte produit

    Consentement aux cookies, mentions légales, gestion documentaire, administration des données et séparation entre usages publics et privés.

    Application concrète dans un produit réel

Architecture et logique produit

Présentation publique

Le site public met en avant le profil, l’expertise, les projets, le contact, le CV et les aspects SEO. Il est pensé pour une consultation fluide, responsive et exploitable par les moteurs de recherche.

Administration centralisée

Les contenus ne sont pas figés. Les projets, documents, tags et messages sont gérés via des outils d’administration reliés à une API commune et à une base de données MongoDB.

Usage desktop et mobile

Le back-office ne se limite pas à un seul support. Une application desktop Electron et une application mobile React Native permettent d’administrer les contenus selon le contexte d’usage.

Événements et notifications

Le projet intègre une logique de notifications push pour faire remonter certains événements importants, comme la réception d’un message ou le téléchargement du CV.

Lecture détaillée du projet

Plateforme web : vitrine, contenus et conversion
Surface publique

Plateforme web : vitrine, contenus et conversion

La partie web publique a pour objectif de présenter le profil, l’expertise et les projets de manière claire, professionnelle et exploitable par des recruteurs techniques comme non techniques.

Front-end et expérience utilisateur

Le front est conçu avec Next.js et React autour d’une logique éditoriale : hero, pages de contenu, catalogue de projets, fiches détaillées, page de contact, mentions légales et parcours de navigation cohérents. Le travail porte autant sur la structure du contenu que sur la qualité visuelle, la lisibilité et l’expérience responsive.

Design, UI et perception produit

L’interface a été pensée comme une véritable identité de portfolio, avec une direction visuelle cohérente, des sections rythmées, une hiérarchie typographique claire et des composants réutilisables. L’objectif est de donner une perception professionnelle, et non celle d’un simple template assemblé.

SEO et accessibilité

Les pages publiques intègrent des titres, des descriptions, des URL propres, un sitemap, des règles robots, des métadonnées Open Graph, des pages détaillées pré-rendues et des contenus structurés pour faciliter le crawl et l’indexation. Le site prend aussi en compte les mentions légales, la confidentialité et le consentement aux cookies.

Backend API : structure, données et logique métier
Couche métier

Backend API : structure, données et logique métier

La couche backend permet de transformer le portfolio en produit administrable. Elle gère les données, la validation, les ressources, l’authentification et certains comportements applicatifs, comme les notifications.

Organisation et modélisation

Le backend est structuré par domaines fonctionnels : projets, messages, documents, tags, authentification et push tokens. Chaque domaine repose sur une séparation claire entre modèles, requêtes, schémas de validation, services métier et typage TypeScript.

Administration et stockage

Les projets, images, CV et métadonnées sont gérés via l’API puis stockés entre MongoDB et Vercel Blob. Cela permet de manipuler des contenus réellement dynamiques tout en gardant une présentation publique stable et optimisée.

Documentation et exposition technique

L’API dispose aussi d’une documentation accessible publiquement, ce qui permet de montrer la façon dont les endpoints sont exposés, organisés et pensés pour des usages desktop, mobile ou d’administration.

Application desktop : administration et confort d’usage
Back-office desktop

Application desktop : administration et confort d’usage

La version desktop montre la capacité à concevoir un outil interne plus opérationnel, avec une expérience d’administration plus dense et plus confortable que sur mobile.

Pilotage des contenus

L’application desktop permet de gérer les projets, les tags, les messages reçus et les documents. Elle répond à un vrai besoin d’administration, avec des écrans orientés consultation, édition, suppression et mise à jour.

Logique produit et ergonomie

Le desktop n’est pas seulement une duplication du site. C’est une interface de travail, plus adaptée à la productivité, à la gestion fine des données et à certains parcours d’édition plus complets.

Electron, React et Vite

Cette partie du projet illustre ma capacité à étendre une logique web vers un environnement desktop, tout en conservant une cohérence d’architecture, de composants et de services API.

Application mobile : consultation et administration nomade
Usage mobile

Application mobile : consultation et administration nomade

La partie mobile prolonge le projet dans un contexte d’usage différent : consultation rapide, administration mobile et réception d’informations en situation de mobilité.

React Native et Expo

L’application mobile a été pensée comme une extension logique de l’écosystème. Elle montre la capacité à adapter les parcours, les composants et la navigation à des usages plus compacts et plus mobiles.

Notifications et contexte temps réel

L’intégration des notifications push permet de transformer la relation au projet : un événement important peut être remonté sans passer par le site ou l’application desktop.

Vision cross-platform

Cette partie souligne une capacité à concevoir un même produit sur plusieurs surfaces, avec des priorités différenciées selon le support et le contexte utilisateur.

Conception, design et positionnement

Ce projet ne repose pas uniquement sur la technique. Il mobilise aussi des compétences de conception, de design, d’organisation de contenu et de positionnement SEO. L’objectif était de faire de ce portfolio un outil professionnel, lisible, utile et convaincant.

Conception et direction visuelle

Le projet a demandé un vrai travail de cadrage visuel, de composants, d’identité graphique et de cohérence entre les différentes surfaces.

SEO et visibilité

Le site public a été pensé comme un outil de visibilité professionnelle, avec des pages crawlables, des slugs propres, un sitemap, des métadonnées et des contenus utiles au recrutement.

Conception produit

Au-delà de la technique, le projet repose sur une logique d’usage : présentation publique, administration interne, réception de messages et évolution continue des contenus.

Cohésion multi-support

Le même sujet a été décliné sur web, desktop et mobile, avec une adaptation de l’expérience plutôt qu’une simple répétition des interfaces.

Stack et technologies

Web

Next.jsReactTypeScriptSassApp Router

Backend

Route HandlersMongoDBMongooseZodJWTVercel Blob

Desktop

ElectronReactViteTypeScript

Mobile

React NativeExpoNavigationNotifications

Intérêt pour un recruteur

Ce projet est intéressant dans une logique de recrutement, car il ne montre pas seulement ma capacité à intégrer une interface. Il montre aussi que je sais construire un produit cohérent, penser les flux de données, organiser un backend, créer des surfaces d’administration et faire dialoguer plusieurs applications autour d’un même besoin.

Vision projet complète

De la vitrine publique jusqu’aux outils internes, avec une logique de produit et pas seulement de pages isolées.

Capacité d’orchestration

Organisation des composants, des routes API, de la base de données et des parcours multi-supports.

Orientation usage réel

Gestion de messages, documents, notifications, SEO, aspects légaux et consentement dans un cadre concret.

Travaillons sur des projets ambitieux

Si vous recherchez un développeur web capable de prendre en charge un sujet dans sa globalité, de l’interface jusqu’à la logique métier et aux outils d’administration, ce projet donne un aperçu concret de ma façon de travailler.