````markdown # API Diagramme PH - Projet Complet > API REST pour la génération de diagrammes Pression-Enthalpie (PH) et calculs thermodynamiques frigorifiques avancés [![Python](https://img.shields.io/badge/Python-3.12+-blue.svg)](https://www.python.org/) [![FastAPI](https://img.shields.io/badge/FastAPI-0.109+-green.svg)](https://fastapi.tiangolo.com/) [![Docker](https://img.shields.io/badge/Docker-Ready-blue.svg)](https://www.docker.com/) [![AWS](https://img.shields.io/badge/AWS-Elastic%20Beanstalk-orange.svg)](https://aws.amazon.com/elasticbeanstalk/) --- ## 📋 Vue d'ensemble Cette API permet de: - ✅ Générer des diagrammes PH interactifs (Plotly) ou statiques (Matplotlib) - ✅ Calculer les propriétés thermodynamiques des réfrigérants - ✅ Analyser les cycles frigorifiques (COP, puissance, rendements) - ✅ Supporter les cycles avec économiseur - ✅ Calculer la puissance entre deux points d'un cycle - ✅ Supporter 17 réfrigérants différents ### Réfrigérants supportés R12, R22, R32, **R134a**, R290, R404A, **R410A**, R452A, R454A, R454B, R502, R507A, R513A, R515B, **R744 (CO2)**, R1233zd, R1234ze --- ## 🏗️ Architecture du système ```mermaid graph TB subgraph "Client Layer" A[Jupyter Notebook] B[React Application] C[Mobile App] D[CLI Tools] end subgraph "AWS Cloud" E[Route 53 DNS] F[CloudFront CDN] G[Application Load Balancer] subgraph "Elastic Beanstalk Environment" H1[API Server 1
Docker Container] H2[API Server 2
Docker Container] H3[API Server N
Docker Container] end I[CloudWatch
Logs & Metrics] J[S3 Bucket
Static Assets] end subgraph "API Container" K[FastAPI Application] L[RefrigerantEngine
DLL/SO Wrapper] M[DiagramGenerator
Matplotlib/Plotly] N[CycleCalculator
Thermodynamics] O[Cache Layer
LRU + TTL] end subgraph "Native Libraries" P[R134a.so] Q[R410A.so] R[refifc.so] S[Other refrigerants...] end A & B & C & D --> E E --> F F --> G G --> H1 & H2 & H3 H1 & H2 & H3 --> I H1 & H2 & H3 -.-> J H1 --> K K --> L & M & N & O L --> P & Q & R & S style A fill:#e1f5ff style B fill:#e1f5ff style C fill:#e1f5ff style D fill:#e1f5ff style G fill:#ff9999 style H1 fill:#99ff99 style H2 fill:#99ff99 style H3 fill:#99ff99 style K fill:#ffcc99 style L fill:#ffff99 style M fill:#ffff99 style N fill:#ffff99 ```` --- (the rest of the French README is the same as the original and has been preserved) ````