Aller au contenu principal

Stack Technique

Langage et Framework

  • PHP 7.0.33 (runtime dans Docker)
  • Zend Framework 1.x (MVC)
  • Analyse statique via PHPStan sur image PHP 8.1

Base de données

  • MySQL avec configuration multi-base (PDO_MYSQL)
  • 3 bases : shiftech, shiftech_cms, olsx
  • Accès via Zend_Db multidb resource

Docker

4 services Docker :

  • php : PHP-FPM 7.0 + Nginx (port ${DOCKER_SERVICE_PORTS_RADIX}0, ex: 80)
  • notifier : Service push notifications (port 8080), JWT-based
  • mail : MailDev pour tests email en dev (SMTP 1025, Web UI 1080)
  • compass : Watcher/compilateur SCSS pour /public/cms

Volumes: cache_data, node_cache, file-service_data (externe)

Dépendances Composer

  • bvanhoekelen/performance (^2.5) - Monitoring performance
  • google/cloud-translate (^1.12) - API Google Translate
  • google/auth (^1.19) - Authentication Google
  • chillerlan/php-qrcode (2.0.8) - Génération QR codes
  • Platform PHP configurée à 7.0.33

Librairies embarquées (library/)

  • Web4u - Couche d'abstraction Zend (custom)
  • Mandrill - Client email transactionnel
  • PHPGangsta - Google Authenticator TOTP
  • ForceUTF8 - Conversion encodage
  • libphonenumber - Validation numéros téléphone
  • Firebase - Push notifications

Frontend

  • jQuery 1.9.1 + jQuery UI 1.10.2
  • Bootstrap (avec composants individuels)
  • DataTables - Tableaux interactifs
  • Select2 - Sélecteurs enrichis
  • TinyMCE - Éditeur WYSIWYG (100+ fichiers plugins)
  • Chart.js + Plotly - Graphiques
  • Socket.IO - Notifications temps réel
  • SweetAlert2 - Alertes modales
  • Dropzone - Upload de fichiers
  • Featherlight - Lightbox
  • Crisp Chat - Support client intégré
  • 241 fichiers JS total (dont 143 vendor)
  • 48 fichiers CSS

Outils de développement

  • Makefile pour orchestration des commandes
  • PHPStan level 5 (avec baseline) pour analyse statique
  • Security checker pour dépendances vulnérables
  • Cypress pour tests E2E
  • MailDev pour tests email
  • Compass pour compilation SCSS