Commit 38e6012f authored by JC Brand's avatar JC Brand

Mention the Yeoman plugin generator

parent 061832df
...@@ -30,8 +30,8 @@ To more deeply understand how this plugin architecture works, please read the ...@@ -30,8 +30,8 @@ To more deeply understand how this plugin architecture works, please read the
and to understand its inner workins, please refer to the `annotated source code and to understand its inner workins, please refer to the `annotated source code
<https://jcbrand.github.io/pluggable.js/docs/pluggable.html>`_. <https://jcbrand.github.io/pluggable.js/docs/pluggable.html>`_.
Playing with a Converse.js plugin in JSFiddle Trying out a plugin in JSFiddle
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Because Converse.js consists only of JavaScript, HTML and CSS (with no backend Because Converse.js consists only of JavaScript, HTML and CSS (with no backend
code required like PHP, Python or Ruby) it runs fine in JSFiddle. code required like PHP, Python or Ruby) it runs fine in JSFiddle.
...@@ -41,10 +41,34 @@ initialized and also when a chat message gets rendered: ...@@ -41,10 +41,34 @@ initialized and also when a chat message gets rendered:
https://jsfiddle.net/4drfaok0/15/ https://jsfiddle.net/4drfaok0/15/
Generating a plugin with Yeoman
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The rest of this document explains how to write a plugin for Converse.js, and
ends with a documented example of a plugin.
You can use a `Yeoman <http://yeoman.io/>`_ code generator, called
`generator-conversejs <https://github.com/jcbrand/generator-conversejs>`_ to
generate plugin scaffolding code, which you can use as a starting point and
basis for writing your plugin.
Please refer to the `generator-conversejs <https://github.com/jcbrand/generator-conversejs>`_
README for information on how to use it.
Registering a plugin Registering a plugin
-------------------- --------------------
You register a converse.js plugin as follows: Plugins need to be registered (and whitelisted) before they can be loaded and
initialized.
You register a converse.js plugin by calling ``converse.plugins.add``.
The plugin itself is a JavaScript object which usually has at least an
``initialize`` method, which gets called at the end of the
``converse.initialize`` method which is the top-level method that gets called
by the website to configure and initialize Converse.js itself.
Here's an example code snippet:
.. code-block:: javascript .. code-block:: javascript
...@@ -64,7 +88,6 @@ You register a converse.js plugin as follows: ...@@ -64,7 +88,6 @@ You register a converse.js plugin as follows:
`converse.initialize` is called. Otherwise the plugin will never get `converse.initialize` is called. Otherwise the plugin will never get
registered and never get called. registered and never get called.
Whitelisting of plugins Whitelisting of plugins
----------------------- -----------------------
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment