¿Cómo puedo crear mis propios plugins de 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 Me gusta

Solo he comenzado, pero aquí está mi “punto de partida” para ponerte en marcha:

Lee:

  • Estos
  • Esto
  • Intenta leer el código de los plugins más sencillos, pero populares y trata de entender qué hacen (esto no siempre es fácil, especialmente por la complejidad de manejar múltiples archivos y la a veces brutal brevedad funcional de JavaScript, pero persiste).

Necesitas aprender:

  • Mucho JavaScript (no busques más allá de los excelentes y divertidos (!) videos de @mpj sobre Fun Fun Function (¡gracias, amigo!))
  • Mucho Ember y un poco de Ruby (Comienza aquí)
  • GitHub y Git
  • (¡Y HTML/CSS, por supuesto!)

Instala:

  • Atom y considera el excelente complemento nuclide que facilita la navegación y edición de árboles de archivos remotos.
  • Una instancia de desarrollo de Discourse usando esta guía, preferiblemente en un servidor en la nube económico, y probablemente instala el plugin de ubicaciones de outlet para hacer las cosas más visuales.
27 Me gusta

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 Me gusta