Aller au contenu

📦 Prérequis pour Maarch Courrier

🖥️ Configuration serveur

⚙️ Configuration minimum

🖥️ OS 💽 Espace disque 🧠 RAM 🧮 Processeur 🌐 Serveur Web 🗄️ Base de données 🔎 Recherche
GNU/Linux (64 bits) 40 Go 8 Go 4 cœurs Apache 2.4 / PHP 8.4 PostgreSQL 16 Typesense 29

💡 Configuration recommandée

🖥️ OS 💽 Espace disque 🧠 RAM 🧮 Processeur 🌐 Serveur Web 🗄️ Base de données 🔎 Recherche
Debian 12 (64 bits) 80 Go* 16 Go 4 à 8 cœurs Apache 2.4 / PHP 8.4 PostgreSQL 16 Typesense 29

ℹ️ Il est recommandé de ne pas mettre la base de données, les docservers et Typesense sur le serveur applicatif en production.


🛠️ Outils serveur complémentaires

📦 Modules PHP essentiels

📦 Extension PHP 📝 Description
php-xml / ext-libxml / ext-simplexml Support XML
php-gd / ext-gd Manipulation d’images
php-pgsql Client PostgreSQL
pdo_pgsql Connexion PostgreSQL via PDO
php-mbstring / ext-mbstring Chaînes multi-octets
php-curl / ext-curl Appels HTTP et webservices externes
php-soap / ext-soap Services SOAP, notamment pour certains connecteurs
php-bcmath / ext-bcmath Calculs numériques de précision
php-fileinfo / ext-fileinfo Détection de types MIME
php-openssl / ext-openssl Chiffrement, TLS et signatures
php-zip Création et lecture d’archives ZIP

📦 Modules PHP optionnels

📦 Extension / paquet 📝 Description
php-ldap Connexion LDAP, requis uniquement si l’authentification ou la synchronisation LDAP est utilisée
netcat-openbsd Vérifications réseau ou IP selon les scripts d’exploitation
php-xsl Transformations XSL, selon les besoins d’intégration ou de conversion

🧰 Programmes tiers

🧰 Programme 🔧 Utilisation ✅ Essentiel
ImageMagick >= 6.7 Génération d’imagettes
Ghostscript Traitement PDF et génération d’imagettes
wkhtmltopdf Conversion HTML vers PDF
default-jre / OpenJDK 17 Modèles de documents et traitements Java
poppler-utils ou xpdf-utils Extraction texte, informations PDF et fusion PDF selon l’environnement
soffice / LibreOffice Conversion bureautique vers PDF
git Récupération des sources
zip Création d’archives ZIP
p7zip-full Décompression d’archives 7z

🐳 Déploiement Docker

Pour un déploiement via conteneurs, les composants principaux sont :

Service Image / version recommandée Utilisation
Application Maarch Courrier registry.maarch.org/maarch/maarchcourrier:latest Application web
PostgreSQL postgres:16 ou postgres:16-alpine Base de données
Typesense typesense/typesense:29.0 Moteur de recherche
Docker Version récente stable Exécution des conteneurs
Docker Compose Version récente stable Orchestration des services

ℹ️ En environnement Docker, les docservers, les personnalisations, les scripts SQL, les tâches cron et les données Typesense doivent être persistés via des volumes.


📚 Dépendances applicatives principales

L’application utilise des dépendances sous licences libres. Les versions indiquées correspondent aux versions majeures utilisées ou attendues par l’application.

Backend PHP

📦 Nom 📌 Version 🔧 Utilisation
PHP 8.4 Runtime backend
Slim Framework 4.14.x Micro-framework HTTP
Monolog 3.9.x Logs
PHPMailer 6.10.x Envoi de mails
TCPDF 6.10.x Génération PDF
FPDI 2.6.x Import et manipulation PDF
Zend Search Lucene 1.12.x Indexation plein texte
TinyButStrong 3.15.x Fusion de documents
OpenTBS 1.12.x Fusion de documents bureautiques
endroid/qr-code 6.x Génération de QR codes
firebase/php-jwt 7.x Gestion de jetons JWT
Google API Client 2.19.x Intégrations Google
Microsoft Graph SDK 2.23.x Intégrations Microsoft
phpCAS 1.6.x Authentification CAS
Typesense PHP client 5.x Client PHP pour Typesense
Guzzle 7.x Client HTTP

Frontend JavaScript / TypeScript

📦 Nom 📌 Version 🔧 Utilisation
Node.js 22.x Runtime JavaScript
npm 10.x Gestionnaire de paquets
TypeScript 5.5.x Langage frontend
Angular 19.2.x Framework frontend
Angular CLI 19.2.x Build et tooling Angular
Angular Material 19.2.x Composants UI
Angular CDK 19.2.x Composants et utilitaires Angular
RxJS 7.8.x Programmation réactive
Bootstrap 5.3.x Framework CSS
Font Awesome 6.7.x Icônes
jQuery 3.7.x Utilitaires JavaScript
jquery-typeahead 2.11.x Autocomplétion
jquery.nicescroll 3.7.x Scroll personnalisé
TinyMCE 7.8.x Éditeur de texte riche
tinymce-i18n 24.x Traductions TinyMCE
ngx-translate 15.x Internationalisation
ngx-color-picker 16.x Sélecteur de couleur
ngx-pipes 3.x Pipes Angular complémentaires
ngx-charts 20.x Graphiques

Recherche

📦 Nom 📌 Version 🔧 Utilisation
Typesense Server 29.x Moteur de recherche
Typesense PHP client 5.x Communication backend avec Typesense

💻 Configuration Poste client

🖥️ OS supportés


🖼️ Résolutions recommandées

  • 🧱 Minimale : 1600×900
  • ✅ Recommandée : 1920×1080

Navigateur Support
🦊 Firefox ESR Cycle de vie Firefox
🦊 Firefox Cycle de vie Firefox
🌐 Chrome Historique des versions Chrome
🧊 Edge Chromium Cycle de publication Microsoft Edge
  • Internet Explorer 11
  • EdgeHTML, ancienne version de Microsoft Edge

🔧 Outils complémentaires côté poste client

✍️ Édition de documents

ℹ️ Java n’est pas requis si l’édition de documents est réalisée via OnlyOffice, Collabora Online ou SharePoint.

📄 Visualisation PDF

📝 Éditeurs de documents

🖊️ Signature électronique