Image du site API upload images (AWS S3)

Description du projet

Ce projet consiste en la création d'une API d'upload d'images développée avec Symfony, Docker, et intégrée à un bucket Amazon S3 pour le stockage des fichiers. L'objectif est de fournir une solution robuste pour l'upload et la gestion des images, avec validation des fichiers et un tableau de bord permettant de les visualiser et de les supprimer.

Fonctionnalités principales

  • Upload d'Images : Possibilité d'uploader plusieurs images simultanément avec un contrôle sur le nombre et la taille des fichiers (jusqu'à 10 MB).
  • Validation des Images : Vérification des formats (jpg, jpeg, png, webp) et contrôle de la taille pour garantir la qualité et la compatibilité des fichiers.
  • Gestion des Erreurs : Messages d'erreur détaillés pour les échecs d'upload et validation, avec rapport JSON pour le suivi des images.
  • Listing et Suppression des Images : Tableau de bord affichant les images stockées sur S3, avec pagination et option de suppression.
  • Connexion sécurisée au Dashboard : Interface utilisateur pour gérer les images avec authentification via un compte admin.
Image du site API upload images (AWS S3)

Fonctionnalités supplémentaires

  • Service d'Upload S3 : Intégration avec l'API AWS S3 via le bundle "aws/aws-sdk-php" pour gérer les interactions avec le service de stockage cloud.
  • Gestion des Sessions : Conservation de l'état de la pagination pour un retour fluide aux pages précédentes dans l'interface.
  • Performances Optimisées : Utilisation de la pagination S3 pour les grands ensembles de fichiers tout en gérant les sessions utilisateur.
  • Tests Unitaires et Intégration : Suite de tests couvrant les principaux cas d'usage, incluant l'authentification admin, l'upload d'images, et la gestion des services AWS.

Conclusion

Ce projet démontre mes compétences des technologies backend et des services cloud, en particulier avec Symfony, Docker et AWS S3. L'API est conçue pour offrir une expérience utilisateur fluide et fiable pour la gestion des fichiers, tout en assurant une sécurité renforcée et des performances optimales.

Dépôt git : https://github.com/fredericpoulain/API-uploadImage

Technologies utilisées

PHP Symfony Bootstrap Docker