Intranet CH Cahors
Refonte de l'intranet hospitalier en CMS sur mesure : migration du contenu Joomla vers Next.js avec TypeScript, React, Prisma et PostgreSQL, interface d'administration responsive et flux de publication.

Technologies
Détail du projet
Contexte - L'ancien intranet du Centre Hospitalier Jean Rougier (Cahors) reposait sur Joomla. Il fallait le remplacer par un CMS sur mesure, plus adapté aux besoins des équipes et plus simple à maintenir.
Objectifs - Permettre à tout le monde de créer et gérer des pages, articles et contenus sans coder, migrer les données existantes de MySQL (Joomla) vers PostgreSQL, mettre en place une gestion des utilisateurs et des rôles avec permissions (accès selon les responsabilités : lecteur, éditeur, administrateur).
Méthodologie - Gestion de projet avec Monday.com, maquettes et prototypes avec Figma, développement en sprints. Analyse de l'existant et recueil des besoins des utilisateurs avant la conception technique.
Développement - Menu de navigation dynamique selon les droits, API REST pour les pages, articles et médias, éditeur de contenu riche (TipTap) avec tables, listes, tâches, couleurs, liens et images, et collaboration temps réel (Yjs, Hocuspocus), gestion des fichiers, images et vidéos, authentification JWT (jose, bcrypt), rôles et permissions en base (Prisma), déploiement et mise en production.
Stack technique - Next.js 14 (App Router), TypeScript, React, Prisma (ORM), PostgreSQL. UI : NextUI, Radix UI, Tailwind CSS, react-hook-form + Zod. Cache côté client : SWR. Tests : Jest + Testing Library. Structure : app/, components/, prisma/, middleware d'auth.
Résultats - Interface CMS livrée avec page d'accueil, menu selon le profil, formulaire de connexion, espaces d'édition pour les pages et articles, gestion des médias. Un rapport de stage détaillé (PDF) décrit l'ensemble du projet.
Galerie








