Reposight est une application web permettant d'analyser et de suivre l'activité de dépôts GitHub à travers des statistiques claires et des visualisations interactives. Elle offre une vue synthétique de l'évolution des projets (commits, pull requests, issues) afin d'aider les développeurs à mieux comprendre et comparer l'activité de leurs dépôts. Le projet a également servi de terrain d'expérimentation pour la gestion de données NoSQL à travers DynamoDB.
Le frontend est une SPA développée avec Next.js, qui gère l'affichage et les interactions utilisateur. Il communique avec un Backend For Frontend (BFF) écrit en Nest.js, chargé de centraliser les appels à l'API GitHub et de gérer la logique métier. L'authentification repose sur un double JWT : un refresh token stocké dans un cookie HttpOnly (longue durée) et un access token envoyé dans les headers de chaque requête (courte durée de vie). Les données analytiques et persistantes sont conservées dans DynamoDB, offrant une base NoSQL rapide, scalable et adaptée aux besoins de l'application. De plus, vous pouvez retrouver une documentation de l'API grâce à Swagger.