Enquanto isso, encontrei alguns recursos que achei informativos. Eu realmente gostaria que estes pudessem ser colocados de forma mais proeminente no tutorial “Como escrever um plugin”. Para iniciantes, não é óbvio que eles sequer existam.
- A própria API do Discourse (não útil para escrever plugins, mas ainda relevante para iniciantes): https://docs.discourse.org/
- API de Plugin do Cliente (não útil para escrever o backend de um plugin, mas definitivamente facilita as coisas para o frontend):
A versioned API for client side plugins
discourse/app/assets/javascripts/discourse/app/lib/plugin-api.gjs at main · discourse/discourse · GitHub
Também entendi que a API de Plugin de Backend é essencialmente Rails ou Ruby - mas não está claro como exatamente o frontend e o backend interagem um com o outro, ou onde está o “gancho” inicial para o backend. Claro, há um plugin.rb para ser colocado, mas fico me perguntando se há alguma documentação sobre qual é o ponto de entrada para este arquivo. Talvez isso seja totalmente óbvio para programadores Ruby on Rails, mas eu não sou um deles, então é uma entrada íngreme aqui.