Visão geral da arquitetura
O WordPress Playground consiste nos seguintes componentes de alto nível:
- WordPress
- WebAssembly PHP
- Vinculações do navegador
- Vinculações Node.js via @php-wasm/node
- API Pública
Visite cada seção para saber mais sobre as partes específicas da arquitetura.
Ferramentas
NX: construindo pacotes e projetos
O WordPress Playground usa NX, um sistema de build projetado para monorepos.
As dependências entre pacotes e projetos do Playground são muito complexas para um bundler como Webpack, e o NX lida com essa complexidade muito melhor:
Para saber mais, acesse a documentação para desenvolvedores do NX.
Lerna: publicando pacotes e projetos
O WordPress Playground inclui vários pacotes NPM, uma extensão do VS Code, plugins do WordPress, uma aplicação web, e outros lançamentos do GitHub, todos gerenciados em dois monorepos: o principal wordpress-playground e Playground Tools.
Usamos Lerna para construir, gerenciar e publicar todos os pacotes JavaScript/TypeScript. O Lerna lida com tudo simultaneamente: incrementa o número da versão, define uma nova tag e publica os pacotes modificados no npm
.
Os pacotes publicados compartilham o mesmo número de versão, então ao atualizar um único pacote, o Lerna incrementa o número da versão de todos os pacotes dependentes.