Aller au contenu
← Tous les projets
SaaSProjet client

Cluster Profile Card Platform

Application de profils et de journal sécurisée par Cognito sur AWS Fargate, avec ETL d'administration et une API à clés

Rôle
Ingénieur principal backend et cloud
Client / produit
Cluster
Années
2026–auj.
Statut
En production

Vue d'ensemble

Une application web de cartes de profil et de journal pour Cluster, développée dans un dépôt partagé avec le développeur du client. Le client était parti d'un front end statique basé sur Amplify ; Hamza a corrigé le build et migré le backend vers Next.js sur ECS Fargate derrière un ALB et CloudFront, avec authentification Cognito, stockage des photos sur S3 et MongoDB. Hamza a ensuite ajouté un espace d'administration avec un pipeline ETL par étapes, une API de données par clés d'API avec limitation de débit, et une application mobile Ionic/Capacitor.

Ouvrir le site ↗Code client privé

Points forts

  • Production sur AWS : Docker sur ECS Fargate derrière un ALB, une porte d'entrée TLS CloudFront sur un domaine personnalisé, et des templates CloudFormation avec des droits IAM restreints.
  • Chaque push sur main déploie sur Fargate via GitHub OIDC, sans clés à longue durée de vie.
  • Profils liés au subject du token Cognito, photos S3 via des URL présignées, et redimensionnement des images côté navigateur pour corriger les uploads trop volumineux.
  • Espace d'administration avec un pipeline ETL par étapes, des conditions et politiques modifiables, et des clés d'API avec limites de débit et expiration par clé derrière des endpoints /api/v1 documentés.
  • Échange de cartes à proximité : l'expéditeur choisit les champs à partager et le reste n'est envoyé qu'après acceptation du destinataire, la détection se faisant par GPS (à moins de 100 m) et par un petit plugin Capacitor que Hamza a écrit pour iOS et Android, qui émet une balise Bluetooth LE aléatoire à chaque visite, si bien que la position de personne n'est transmise aux autres utilisateurs.
  • Application Ionic Vue + Capacitor pour iOS/Android sur la même API ; 41 des 90 commits du projet sont de moi (août–sept. 2026).

Technologies

Plateformes

WebiOSAndroid
Next.js 16React 19Node.jsAmazon Cognitoaws-jwt-verifyAWS ECS FargateApplication Load BalancerCloudFrontAWS LambdaAPI GatewayAmazon S3MongoDBDockerCloudFormationGitHub Actions (OIDC)Ionic VueCapacitorCustom Capacitor plugin (Bluetooth LE)

Visuels du projet

Projet suivantFast OTT Player→