https://community.nodebb.org/post/88242 I think this answers your question. Let me know if it doesn't work.
NodeBB Plugins
Discussion regarding NodeBB Plugin development.
Most Voted Plugins
This is a Shoutbox plugin for NodeBB! It currently requires and supports NodeBB v1.x.x
Current version:
0.3.3
Some screenshots to convince you:
I'm still getting away with this
Settings yo
You can install this plugin with:
npm install nodebb-plugin-shoutbox Other informationThe source can be found here:
https://github.com/Schamper/nodebb-plugin-shoutbox
Do you like my plugins? Contact me if you want to buy me a beer.
I made a little thing.
This plugin adds a little feature to the mentions plugin. With this enabled, you can hover over a mention and view some information about the mentioned user.
npm install nodebb-plugin-cards
Source Link Preview Image GitHub - Schamper/nodebb-plugin-cards: NodeBB plugin that extends the mentions plugin with hover cardsNodeBB plugin that extends the mentions plugin with hover cards - Schamper/nodebb-plugin-cards
faviconGitHub (github.com)
This plugin adds a site-wide calendar to NodeBB.
Installation npm install nodebb-plugin-calendar@latest Activate it in the ACP and restart NodeBB Configure permissions at ACP Manage > Categories pageDon't forget to restart after installing the plugin.
Features Events created, edited, and deleted as part of a post Native NodeBB category permissions are used to determine who can post and view events Public events as part of the same permissions system Response system for easy user responses (yes, maybe, no) Configurable automated reminders for upcoming events using NodeBB's notifications system Centralized calendar interface to view all upcoming eventsIn The Works
iCal export Simplistic, graceful calendar UI (infinite scroll) with mobile support(Taking gamification to the next level, literally :p)
About 10 years ago I worked on this project called ADR (Advanced Dungeons and Rabbits), which was an RPG modification for phpBB2. There were a few of those modifications back in the day, such as Moogies and Zarath's RPG mods. Even Gaia Online was based upon phpBB at some point.
Anyways, that project was very dear to my heart and I've always wanted to port it to something more modern (initially to phpBB3, thank goodness I didn't bother with that!)
Anyways, here it is. *Do not use on production environment - I only spent a grand total of two weekends on this... I have a ton left to do! Any help is appreciated 🙂
I'll set up a Transifex project for this at some point, because we actually have a ton of translations already, I think maybe even more than what NodeBB has at the moment 😛
Screenshotsbattle
inventory
mining
profile
skills
stores
Installation npm install nodebb-plugin-openfantasyNote: You need the Cash MOD currency plugin installed in order for the RPG system to be activated.
Fork it on GitHub.
This NodeBB plugin pulls RSS feeds and creates topics in predefined categories.
Link Preview Image GitHub - barisusakli/nodebb-plugin-rss: A NodeBB Plugin to post topics using RSS feedsA NodeBB Plugin to post topics using RSS feeds. Contribute to barisusakli/nodebb-plugin-rss development by creating an account on GitHub.
faviconGitHub (github.com)
To customise options for the parser, please consult the "RSS" page in the administration panel, under the "Plugins" heading.
Installation npm install nodebb-plugin-rss Usagebaa720fc-1b00-440e-bee0-feb439302ade-image.png
Click 'Add Feed' Enter the RSS feed you want to pull Select the category you want to post to Enter tags if you want to tag the posted topics Type in the username you want to post as Select the interval to query the RSS feed Select the timestamp to use for the topic Click Save.Lets NodeBB act as a comments engine/widget for your blog. Currently supports both Ghost and WordPress. There is a separate repo for PencilBlue support. If you'd like to see support for other CMS/blog systems, please submit an issue on our tracker.
The comments are exposed to any plugin you have built into the core, so it is completely possible to have emoticons, embedded video, and/or whatever else you want in the comments section of your blog.
Articles are published to a forum category of your choice, and will gain a tag that links it back to the original article.
What's new in 0.8x The WP-JSON plugin is no longer required. This plugin will now use the built-in JSON API. The comments snippet has changed, please update your integration code as necessary Fixed a bug that caused errors when no ACAO header was defined Upgrading to 0.6xGetting Unexpected end of JSON input for /comments/publish? On your blog's post template (ex. post.hbs for Ghost) where you have installed the blog comments script, find the following line:
<script id="nbb-markdown" type="text/markdown">{{../post.markdown}}</script>and above, add:
<script id="nbb-title" type="text/markdown">{{../post.title}}</script> What's new in 0.3x Fixed quite a few server crashes (especially when publishing) Compatible with NodeBB 0.6x+ and Ghost 0.5.10 Added tags support for Ghost Added comment support in general Screenshotsblog comments
InstallationFirst install the plugin:
npm install nodebb-plugin-blog-commentsActivate the plugin in the ACP and reboot NodeBB. Head over to the Blog Comments section in the ACP and select the Category ID you'd like to publish your blog content to (default is Category 1). Make sure you put the correct URL to your blog.
Ghost InstallationPaste this any where in yourtheme/post.hbs, somewhere between {{#post}} and {{/post}}. All you have to edit is line 3 (nbb.url) - put the URL to your NodeBB forum's home page here.
<a id="nodebb-comments"></a> <script type="text/javascript"> var nbb = {}; nbb.url = '//your.nodebb.com'; // EDIT THIS nbb.cid = 1; // OPTIONAL. Forces a Category ID in NodeBB. // Omit it to fallback to specified IDs in the admin panel. (function() { nbb.articleID = '{{../post.id}}'; nbb.tags = [{{#../post.tags}}"{{name}}",{{/../post.tags}}]; nbb.script = document.createElement('script'); nbb.script.type = 'text/javascript'; nbb.script.async = true; nbb.script.src = nbb.url + '/plugins/nodebb-plugin-blog-comments/lib/ghost.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(nbb.script); })(); </script> <script id="nbb-title" type="text/markdown">{{../post.title}}</script> <script id="nbb-markdown" type="text/markdown">{{../post.markdown}}</script> <noscript>Please enable JavaScript to view comments</noscript>If you wish, you can move <a id="nodebb-comments"></a> to where you want to place the actual comments widget.
Wordpress InstallationReplace the contents of /wp-content/themes/YOUR_THEME/comments.php with the following (back-up the old comments.php, just in case):
<?php if ( post_password_required() ) return; ?> <a id="nodebb-comments"></a> <script type="text/javascript"> const nodeBBURL = '//your.nodebb.com'; const wordpressURL = '<?php get_site_url(); ?>'; const articleID = \''.get_the_ID().'\'; const categoryID = null; // OPTIONAL. Forces a Category ID in NodeBB. // Omit it to fallback to specified IDs in the admin panel. (function() { var nbb = document.createElement('script'); nbb.type = 'text/javascript'; nbb.async = true; nbb.src = nodeBBURL + '/plugins/nodebb-plugin-blog-comments/lib/wordpress.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(nbb); })(); </script> <noscript>Please enable JavaScript to view comments</noscript> General - PHP examplePaste this any where that you want load commenting system. All you have to edit is line 3 (nodeBBURL) - put the URL to your NodeBB forum's home page here. You can also use any template engine (hbs, eco...) instead of PHP.
<a id="nodebb-comments"></a> <script type="text/javascript"> var nodeBBURL = '//your.nodebb.com', <?php echo "articleID = " .getId().";"; $obj = new stdClass(); $obj->title_plain = ""; $obj->url=""; $obj->tags = []; $obj->markDownContent= ""; $obj->cid = 1; // OPTIONAL. Forces a Category ID in NodeBB. // Omit it to fallback to specified IDs in the admin panel. echo "var articleData =" .json_encode($obj).";"; ?> (function() { var nbb = document.createElement('script'); nbb.type = 'text/javascript'; nbb.async = true; nbb.src = nodeBBURL + '/plugins/nodebb-plugin-blog-comments/lib/generalphp.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(nbb); })(); </script> <noscript>Please enable JavaScript to view comments</noscript>You must have some getId() function on your website, for example:
For a PHP website
<?php function getId(){ $id = 0; // unique id for each page of your website return $id; } ?>If you don't have such ID, you can use this function that generates a unique ID from the URL:
<?php function getId(){ return stringToInteger($_SERVER['REQUEST_URI']); } function stringToInteger($string) { $string = md5($string); $output = '1'; for ($i = 0; $i < strlen($string); $i++) { $output .= (string) ord($string[$i]); } return (int) $output; } ?> Comments CounterYou may optionally put a "# of comments" counter anywhere on the page with the following code:
<span id="nodebb-comments-count"></span> CommentsA mechanism to query the number of comments on another separate page will be available in a future release.
Author and Category informationTo use NodeBB's category and author information (instead of using Ghost's user/tag system), there are two elements that this plugin searches for:
Published by <span id="nodebb-comments-author"></span> in <span id="nodebb-comments-category"></span> PublishingHead over to the article that you'd like to publish. The code will detect if you're both an administrator of your blog and NodeBB (so ensure that you're logged into both) and will display a publish button if so.
You may also create a publishers group in NodeBB to allow a group of regular users to have publish rights.
Multiple blogsYou may use a comma-separated entry of blogs in the ACP to support publishing from a network of separate blogs to your forum. You can also choose to put each blog in its own dedicated category, or place them all into one category.
Sites using this plugin NodeBB's Blog (Wordpress). The Unknown Artist Hour (Ghost). Strange Adventures In (Ghost). V2MM (Ghost).Please submit a PR to add your site here 🙂
TODO Republishing (for now you can just edit both the article and the published blog). Pull CSS files from appropriate plugins? Ability to load custom CSS to style widget.Plugin for adding Award System on your board: it could be medals, or it could be very special ranks, etc. It's a good instrument to engage users on your board, and It's another instrument for gamification of your board.
I hope this plugin will be helpful for you 😉
Install npm install nodebb-plugin-ns-awards Links Plugin Issues Changelog Features Overview, pre-releaseAll components will be improved overtime. It's just very first steps 😉 If you have ideas, don't hesitate to share them.
Create AwardsScreen Shot 2015-05-02 at 8.22.59 PM.png
Overview them in ACPScreen Shot 2015-05-02 at 8.24.27 PM.png
Give Medals!Screen Shot 2015-05-02 at 8.24.50 PM.png
Overview all awards at yourboard.com/awardsScreen Shot 2015-05-02 at 8.26.18 PM.png
Extend user's profilesScreen Shot 2015-05-02 at 8.26.48 PM.png
This plugin shows who is currently viewing a topic. This was a core feature that we removed a while ago, now it is back as a plugin 🎊
Installation npm install nodebb-plugin-browsing-usersMore info at https://github.com/barisusakli/nodebb-plugin-browsing-users
Notes
Currently only persona supports this, if you want to add it to your custom theme make these changes.
The newsletter plugin allows NodeBB forum administrators to send e-mail newsletters to all users or groups of users.
Latest version v0.7.x is compatible with NodeBB v1.5.0 and up.
SetupBefore using this plugin you will need to install an emailer plugin. I recommend nodebb-plugin-emailer-mailgun, but any plugin with nodebb-plugin-emailer-* should work.
UsageThis plugin uses a WYSIWYG editor tinyMCE located within the admin panel plugins menu.
Newsletters can be sent to multiple user groups. Options are also given for subscription overrides and blacklists.
Users can unsubscribe from newsletters via the user settings menu. New users will automatically receive newsletters.
In addition to using the WYSIWYG editor, admins can also send newsletters directly from the composer when creating a new topic.
TODOs Translations. Emoji-Extended integration. Save email templates. Save previous newsletter stats and recipients. Fork Me on GitHub!This NodeBB plugin will allow you to add polls to the first post of a topic.
Current version: 0.2.9
NodeBB compatibility: 1.0.0 and up.
This is still a work in progress. It's entirely possible that old polls will end up broken by new releases.
How to add a pollThere are two ways to add a poll to a topic. The easiest and advised way is to use the poll creator. After installing you will find a new button in the composer. Clicking it will open the poll creator. In here you can change some settings and add the options for your poll. When you're done, hit Confirm and the appropriate poll markup will be added to your post.
The second way is to write the markup yourself. Its syntax is as follows:
[poll <settings>] - Poll options - Another option [/poll]It doesn't matter where in the post you add this markup, as long as you keep it intact.
Keep in mind that you can only add a poll to the first post of a topic. You can add polls to existing topics by editing the first post.
AdministrationThe AdminCP page for this plugin will allow you to change the default settings and set some constraints. There are currently only a few options, but these will expand over time.
InstallationEither through the NodeBB ACP or npm install nodebb-plugin-poll
Screenshots
If you're willing to help, please make any improvements you want and submit a PR.
SourceThe source can be found on Github.
DonationFor those that insist on buying me a beer: hit my up on the chat.
Monitors specific channels in real time and adds them to the widget view.
Install npm install nodebb-plugin-ns-twitch-monitoror via plugin manager
Links Plugin Issues Details Video Preview Widget Lookwidget.png
Allows NodeBB to send notifications over an TelegramBot!
Install it from nodebb plugin manager on your admin zone and you are done
or
clone it and Enter to the directory of the plugin and execute
https://github.com/NodeBB-Community/nodebb-plugin-telegram-notifications
Enter to the directory of the plugin and execute:
npm install
This will install all libs the plugin needs.
Configuration Install and activate this plugin. Create your Bot, and obtain your bot token Enter the token into the plugin's setup page (/admin/telegram), and save. Reload NodeBB. User Config Talk to the bot and get user token Go to yourdomain/telegram/settings and fill the token Have fun Commands on telegramReply thread
/r topicID message
Send chat
/chat userslug message
Show Recent
/recent
Show last post on a topic
/read topicID (number of posts)
Known bugs:
Please use restart first time after putin your token on admin zone If you have nodebb scaling you must run the plugin on main server with a port non set on other instances, can change mainport in library.jsGithub:
https://github.com/NodeBB-Community/nodebb-plugin-telegram-notifications
Example of notification on telegram
0_1463150981204_Screenshot_2.png
This NodeBB plugin uses the HTML5 Notifications API to display desktop alerts upon new incoming notifications.
If you have a forum logo set it will use that as the notification icon. Clicking on the notification will take you the appropriate thread.
Install via NPM:
npm install nodebb-plugin-desktop-notificationsdesktop-notifications
When the user clicks on the notification icon in the menu, a permission dialog is launched to activate desktop notifications.
Also supports push notifications on mobile:
notifications_mobile.png
Even when the browser is minimized, you can still get a notification.
More info on Github
This is a light weight RSVP plugin . For example you can use this to ask people to join an event or express their interest in a topic, right from inside a post. The source code is on github.
npm install nodebb-plugin-whoisin
Once you activate the plugin, you just have to ask the magic phrase: who is in? in a post
The plugin will automatically replace that question with a widget like this:
Selection_044.png
Now every user can easily add themselves to that list, or remove themselves if they change their mind. Currently only one unique whoisin widget can be added to each topic.
This is my first plugin for NodeBB. Any feedback, feature requests or bug reports will be much appreciated! 🙂
I hope some people will find this useful.
Tradional Like system, like on various social networks. This plugin uses NodeBB Vote System, but as you can see only up-votes 😇
Same as default chevrons, plugin uses sockets to update in real-time.
It's a small widget (Bootstrap, extra small button).
Screen Shot 2015-05-11 at 5.34.59 PM.png
It's a split button:
left part is toggle button, to like/unlike right part is count button, to show likersIn a nutshell, this plugin allows you to share sessions between your application and NodeBB. You'll need to set a
special cookie with a common domain, containing a JSON Web Token with user data. If sufficient, this plugin will
handle the rest (user registration/login).
Single Sign-On allows a user to log into NodeBB through a third-party service. It is best (and most securely)
achieved via OAuth2 provider, although other alternatives exist. An example of a single sign-on plugin is
nodebb-plugin-sso-facebook.
Single sign-on does not allow a session to become automatically created if a login is made to another site.
This is the one misconception that people hold when thinking about SSO and session sharing.
This session sharing plugin will allow NodeBB to automatically log in users (and optionally, log out users)
if the requisite shared cookie is found (more on that below).
You can use this plugin and single sign-on plugins together, but they won't be seamlessly integrated.
How does this work?This plugin checks incoming requests for a shared cookie that is saved by your application when a user
logs in. This cookie contains in its value, a specially crafted signed token containing unique identifying
information for that user.
If the user can be found in NodeBB, that user will be logged in. If not, then a user is created, and that
unique indentifier is saved for future reference.
##About
I'm way too tired to write a lot about this. It's nearly 3AM here and I've been working on this from late this afternoon. Just wanted to get this out in the open ASAP so I can finally cross it off my todo-list and so that people who really want / need it can contribute.
This plugin essentially adds a Call button to the chat modal. Hitting it will allow you to video call another user.
It's not the best code, but it works and I'm fairly happy with it, seeing as I started today by not being able to tell if the other user was available to call.
##Install
npm install nodebb-plugin-webrtc
##Usage
After enabling, start a chat with a user. After the other user has also opened the chat window, the Call button will be enabled. Just hit it 🙂
##Source
https://github.com/Schamper/nodebb-plugin-webrtc
Please contribute.
I'm going to sleep now 🙂
And I also need to finally fix that setting in my IDE for tabs vs spaces...
Hi all,
I made a small plugin to help filter out curse words in a post.
It looks for curse words and censors them out.
To install
npm install nodebb-plugin-beep
and find the source:
https://github.com/ninenine/nodebb-plugin-beep
This is my fist attempt so be gentle 😉
aka "the One Plugin"
In the interest of making available plugins easier to find and install, I made a plugin that will do just that!
Now:
*Some console typing required
Just:
npm install nodebb-plugin-finder
(maybe even for the last time!)
Github
History:
v. up to 0.0.4: works with nodebb v. 0.3.x
0.0.5: Compatibility with NodeBB v. 0.4.1
UPDATE: this plugin is now deprecated, as the functionality has been implemented in the core product. It will still be available on github and npm for functionality up to (but not including) NodeBB v. 0.4.3
source: https://github.com/yariplus/nodebb-plugin-user-invitations
This NodeBB plugin allows current users to send email invitations to potential new users.
Users can send invitations from the 'Invitations' page listed on their profile links menu.
user profile menu
Admins can also send invitations from the 'User Invitations' page in the ACP.
admin link
ConfigurationAdmins can configure additional settings from the 'User Invitations' page in the ACP. All settings are saved automagically.
InstallationInstall the plugin using the "Install Plugins" page in the ACP. The package name is nodebb-plugin-newuser-invitation
Screenshots Additional infoCC0 or MIT license.
This project started as a fork of nodebb-plugin-newuser-approval by pichalite. I have since detached the fork because the plugins no longer have anything in common.
Subcategories
-
Plugin Development
Have a question about building a plugin? Ask here -
Plugin Requests
Need a plugin developed? Ask here!