@sanatisharif Thanks for the link. I completely agree that if NodeBB wants to move forward in popularity it is going to need to adopt some form of tutorials or documentation. If at some point I eventually grasp the concepts behind NodeBB plugins and themes enough, I would be willing to write a tutorial for a beginner that has freshly installed NodeBB. However at this point I can unhesitatingly admit that nearly anyone out there is more qualified than me at the moment.
AccessDenied
Posts
-
NodeBB For a Complete Beginner -
NodeBB For a Complete Beginner@frissdiegurke Thank you for you well written response. That clears up a lot on why I'm confused - there just simply ISN'T documentation on anything. If I could ask, how did someone like yourself become familiar with the concepts behind NodeBB? Are they just intuitive or are they related to other forum/CMS style frameworks?
I appreciate you referencing a new plugin for me to take a look at. I think my biggest question at the moment is understanding the functionality of a library. Every single plugin library I've looked at is different and communicates with NodeBB differently. I'm not sure how I am supposed to properly generate a library. For instance, please reference the following:
-
In nodebb-plugin-shortcuts you are attaching hook functions to an exports object and completely ignore the module variable.
-
In nodebb-plugin-custom-homepage the entire library is wrapped in (function(module) { ... }(module)) and instead of using an exports object to define hook functions, uses a Plugin object and assoiates module.exports = Plugin at the end.
-
In nodebb-plugin-quickstart the library is not wrapped but uses the Plugin object and associates module.exports to the Plugin object at the end.
Which library is built correctly? I assume they are all built correctly, but how can they all be built differently and still be interpreted by NodeBB correctly? I am under the impression that NodeBB interprets the library automatically based on a specific format and then generates the functions laid out in the header for the hook actions and filters set in plugin.json, am I wrong about that? Also, how am I supposed to know what function parameters are associated to the hook events described in plugin.json? For instance in nodebb-plugin-custom-homepage three hooks are described with the following methods, defineWidgetAreas, serveHomepage, addListing. In the library, they all have different function parameters:
-
Plugin.serveHomepage = function(params)
-
Plugin.addListing = function(data, callback)
-
Plugin.defineWidgetAreas = function(areas, callback)
Again, I am assuming that NodeBB builds these function parameters based off of the hook events that are called.
I appreciate your help and I hope I am not being too much of a burden.
-