Skip to content

2.2.1. Choix de librairies

Julien Bras edited this page Apr 11, 2019 · 1 revision

De façon générale les libraires externes seront choisis de manières minutieuses, en évitant d'en rajouter trop. Elle doivent être installable via packagist / composer. Si c'est un bundle Symfony c'est préférable mais pas obligatoire (un bundle arrive avec généralement un service dédié pour Symfony)

Authentification

Par défaut FOSUSerBundle a été implémenté, meme si ce bundle n'est pas forcement un bon choix il reste une solution simple pour rapidement implementer une solution d'authentification simple avec formulaire d'inscription, d'oubli de mot de passe, etc.

Génération de PDF

L'application doit pouvoir générer des PDF (nomenclatures...) De nombreuses solutions en PHP sont disponibles, je sélectionne ici uniquement les solutions disponibles sur packagist donc utilisable dans notre composer.json pour faciliter la gestion des paquets.

  • FPDF Un des plus ancien, qui ne permet pas de transformer un templating HTML/TWIG en PDF. Moins facile pour le maintien long terme. Bundle Symfony dispo.
  • snappy basé sur le binaire wkhtmltopdf qui doit être disponible sur le serveur. Donc moins facile pour le déploiement je met de coté cette solution.
  • TCPDF Cette librairie assez connue permet de consommer un contenu HTML pour le convertir en PDF. C'est assez pratique pour nous avec le système de template. Mais cela reste assez bas niveau et compliqué pour faire des rendu simples. Bundle dispo.
  • HTML2PDF Basé sur la précédente plus facile à utiliser. Bundle dispo (déjà utilisé sur un autre projet, fait la job)
  • DomPDF Convertisseur HTML to PDF egalement. Simple a utiliser. Il gère bien les balises @media @page... Bundle dispo. C'est celui-la qui a été integré actuellement dans le produit.