Apparently the last time there was this much snow in Toronto was 1951, back when “bulletin boards” were just things you stuck push-pins into. Times sure change! But one thing that won’t change is our ongoing efforts to make NodeBB the best forum software out there.
Under the hood are tons of changes to improve NodeBB, but here are some of the bigger ones we wanted to highlight:
Package Manager Telemetry Upgrade
New installs of NodeBB now send telemetry information to the NodeBB Package Manager (nbbpm) to track which plugins are working. This will help add “real-world validation” to packages published on nbbpm. It’s important to note that this process does not send any site or user data, but rather only a hash of the site and list of working plugins. Pre-existing installs will not have this option enabled. You can opt-in and out of this reporting by going to
Ability to change post ownership
Amoung many small but useful additions in the new release is the ability for moderators or admins to change the ownership of a post. This can be performed via the Topic Tools menu.
Quill Composer WYSIWYG Editor
Providing a WYSIWYG editor option is a regular request. A pre-release version of the Quill composer plugin is now availible at https://github.com/NodeBB/nodebb-plugin-composer-quill/. Note that Quill is not compatible with Markdown, so all posts made before the composer’s installation will need to be migrated via the bundled migration tools.
More nauanced Moderator privileges
In an effort to provide even more granular control in terms of who can do what on your forum, the Delete and Purge Topic privleges have been broken out from the Moderate privilege. This means you can now have mods who have the ability to pin, lock and move topics, but they will need an Admin or other user with the explict privilege to remove content.
awaitable everything (almost)
await into Node/V8, we’ve decided to go all-in and refactor our codebase so that all methods (including websockets) are
async library updated to v3.x
If you have a plugin or theme that relies on the older 2.x branch of async, you may run into incompatibilities for certain async methods (such as
If you currently
var async = module.parent.require('async');, you should install async locally and
const async = require('async'); instead.
Alternatively, you can update your plugin to support the latest async module (changelog here).
HTML sanitizer enabled by default
Prior to this version, NodeBB contained no built-in HTML santization in order to not cause undue influence on post data. Plugins handled this by bundling their own sanitization (e.g. Markdown sanitizes input as part of its parsing).
If a forum were set up with no parser at all, then it was possible to introduce XSS as there was no sanitization. For that reason, we have set up a minimal HTML sanitization step during the post parsing phase.
If the sanitizer is too intrusive, please let us know and we can tweak the default shipped configuration for future versions of NodeBB.
Developer FAQ category on our community forum
Not a product update as such, but we now have a developer FAQ area on our own forum at https://community.nodebb.org/category/26/developer-faq. This is intended for “deep-dives” into questions often asked by those learning to develop plugins and themes for NodeBB, and is part of our effort to improve documentation. If there is a development-related question you’d like to understand in more detail, please let us know by creating a topic and tagging us in the forum (@julian, @baris, and @psychobunny).
If you are hosting NodeBB on your own server, as usual we recommend that you update to the new release. If you encounter any issues, please post them in the community support forum. If your site is hosted with us, please drop us a line at firstname.lastname@example.org to organize an appropriate time to perform the upgrade.