Vue d'ensemble de l'architecture
WordPress Playground se compose des composants de haut niveau suivants :
- WordPress
- PHP WebAssembly
- Liaisons pour le navigateur
- Paquets PHP.wasm pour l'API partagée, les liaisons de plateforme et les binaires spécifiques à chaque version
- API publique
Visitez chaque section pour en savoir plus sur les différentes parties de l'architecture.
Outillage
NX : compilation des paquets et des projets
WordPress Playground utilise NX, un système de build conçu pour les monorepos.
Les dépendances entre les paquets et les projets de Playground
sont trop complexes
pour un bundler comme Webpack, et NX gère bien mieux cette complexité :

Pour en savoir plus, consultez la documentation NX pour les développeurs.
Lerna : publication des paquets et des projets
WordPress Playground comprend plusieurs paquets NPM, une extension VS Code, des plugins WordPress, une application web et d'autres versions publiées sur GitHub, le tout géré dans deux monorepos : le principal, wordpress-playground, et Playground Tools.
Nous utilisons Lerna pour compiler, gérer et publier
tous les paquets JavaScript/TypeScript. Lerna s'occupe de tout en même temps :
il incrémente le numéro de version, crée une nouvelle étiquette et publie les
paquets modifiés sur npm.
Les paquets publiés partagent le même numéro de version : lors de la mise à jour d'un seul paquet, Lerna incrémente donc le numéro de version de tous les paquets qui en dépendent.