Comment créer mes propres plugins Discourse ?

Hi, I want to make my own discourse plugins and what languages I need to know and what tools/programs/apps I need to do so. I appreciate it.

2 « J'aime »

Je viens tout juste de commencer, mais voici ma « base solide » pour vous lancer :

Lisez :

  • Ces
  • Ceci
  • Essayez de lire le code des plugins les plus simples, mais populaires, et voyez si vous arrivez à comprendre ce qu’ils font (ce n’est pas toujours facile, surtout avec la complexité liée à la gestion de multiples fichiers et la brièveté fonctionnelle parfois brutale de JavaScript, mais persévérez)

Vous devez apprendre :

  • Beaucoup de JavaScript (regardez tout simplement les excellentes et amusantes (!) vidéos de @mpj sur Fun Fun Function (merci mon ami !))
  • Beaucoup d’Ember et un peu de Ruby (Commencez ici)
  • GitHub et Git
  • (Et bien sûr HTML/CSS !)

Installez :

  • Atom et envisagez l’excellente extension nuclide qui facilite la navigation et l’édition à distance dans l’arborescence des fichiers
  • Une instance de développement de Discourse en suivant ce guide, de préférence sur un serveur cloud peu coûteux, et installez probablement le plugin des emplacements des outlet pour rendre les choses plus visuelles.
27 « J'aime »

I appreciate it! What “kind” of JavaScript, like web or node.js?

ECMAScript. It’s used in both ‘places’.

Would I just make a new atom file named plugin.js and work on a plugin there?

No. There are no ‘.js’ files. JavaScript is mainly stored in ‘.js.es6’ files. Ruby in ‘.rb’ files. It’s more complex. Take a look at existing plugins for example file arrangement and content. You need to understand serialisation, Ember templates, the Router and the Model, View, Controller concept.

I would highly recommend you install a simple existing plugin of your choice and try modify it in some sensible way.

Dont skip on the reading.

I think it’s fair to say is a pretty steep learning curve because there are a lot of concepts to get to grips with, two languages, one framework and Discourse’s ‘way of doing things’ …

4 « J'aime »