Sorry if this has been asked, I tried searching for documentations but all I can find is the Get Started post, it helped me create a plugin but it didn’t cover topics such as what APIs are available. So, are there documents at all?
Thanks!
Sorry if this has been asked, I tried searching for documentations but all I can find is the Get Started post, it helped me create a plugin but it didn’t cover topics such as what APIs are available. So, are there documents at all?
Thanks!
Api documentation is available at
http://docs.discourse.org
Discourse API doc is not what I’m requesting. I was thinking about something like Chrome plugin development docs or WordPress plugin development docs. For example when I read the Beginner’s Guide to Creating Discourse Plugins, I have questions like what are other special properties and callbacks does Discourse recognize in the default module? or what parameters are passed into the initialize() method? Neither the guide nor docs.discourse.org answered those questions.
As discourse uses ember in frontend and rails in backend, you can browse their respective docs to know how to create components, or controllers, etc.
That being said, you can go through the code of discourse to learn how they are doing things.
I had asked similar question long time back… See if the answers given here help you.
Then those questions are probably good candidates for dev ![]()
Dando um bump nisso porque não foi respondido ![]()
@bcartwri96 Acredito que, no fundo, o problema é que há muito pouca documentação abrangente sobre a API de Plugins do Discourse.
Existem fragmentos de informação aqui no Meta, como em Developing Discourse Plugins - Part 1 - Create a basic plugin, mas parece não haver uma referência completa da API. Embora parte do que ocorre seja puramente Ember ou Rails, há uma enorme quantidade de coisas intermediárias que são convenções puras do Discourse.
Com o tempo, seria ótimo se a comunidade pudesse trabalhar na criação de um Manual de Desenvolvedor do Discourse que preenchesse essa lacuna. Já colocamos parte disso em prática por meio de fragmentos de tutoriais em Pavilion e esperamos que parte desse trabalho sirva como base inicial para desenvolver um guia de referência mais abrangente.
Confira este arquivo. A maioria dos métodos está documentada brevemente
https://github.com/discourse/discourse/blob/master/app/assets/javascripts/discourse/app/lib/plugin-api.js
Este arquivo foi movido para blob/main/app/assets/javascripts/discourse/app/lib/plugin-api.gjs