Skip to content

Technical Support

Need help with installing or configuring NodeBB? Look here.

4.7k Topics 26.1k Posts

Subcategories


  • User documentation for NodeBB

    44 Topics
    44 Posts
    Jay MoonahJ

    One of the first important things to do after setting up NodeBB is to set up an emailer plugin. While NodeBB does include a local emailer, if your forum is particularly active we recommend using an third-party emailer such as SendGrid which provides better deliverability for sites that send a high volume of email. Setting up SendGrid in NodeBB is very easy.

    Open the administrative dashboard using the 'gear' icon on your forum. Open the Extend > Plugins menu, and select the Find Plugins tab. Use the search on the right. Type 'SendGrid' and the plugin should appear -- select Install when you see it. From Installed tab on the Plugins menu, search again for 'SendGrid' and select Activate. Activating the plugin will require a restart of your forum. To restart, select the Dashboard menu and press the Restart button to the right. After NodeBB restarts, the SendGrid plugin will be active.

    After you restart, there should be a item called Emailer (SendGrid) under the Plugins menu -- if you don't see this right away, try refreshing your browser.

    Sign up to SendGrid

    Go to the SendGrid website, open the pricing page and scroll to the bottom. Click on the link and create your free account. Once you've confirmed your SendGrid account via email, you should be able to login to the SendGrid website. On the left side of your SendGrid dashboard, open Settings and click on API Keys. Click the button in the top right to create a new key. Make sure that the key has Full Access for Send Mail and Alerts.  When you are done, the new key to your clipboard.

    Now, return to the SendGrid menu on your NodeBB admin panel. Paste the API key into the field, and save your changes. Now go back to the Dashboard to restart your forum one more time.

    SendGrid should now be working for your forum.

    YouTube Setting up SendGrid mailer for NodeBB

  • NodeBB guides, how-to's and general tips and tricks

    82 Topics
    599 Posts
    barisB

    Quick start plugin has an example on how to add a new api route https://github.com/NodeBB/nodebb-plugin-quickstart/blob/master/library.js#L40-L76.

    The hooks that are fired client side are for client side code in plugins. If you want to pass data from the client to the server you have two options.

    Create an api route like in quick start plugin Create a new socket event listener on the server side and use socket.emit() client side. Example here
  • 25 Topics
    196 Posts
    phenomlabP

    @baris updated to 3.7.2 and now just waiting for the plugin to be updated.

  • How can I login my forum through the nodebb.org/dashboard

    Solved
    5
    0 Votes
    5 Posts
    155 Views
    C

    @baris another issue. after some rebuild & restart . the saas plugin disappeard..

    update: never mind, seems my plugin break the saas load. not issues now

  • Clarification for `isCluster`

    Moved
    2
    0 Votes
    2 Posts
    95 Views
    barisB

    Basically the isCluster setting controls how multiple nodebbs will communicate with each other.

    If it is not set explicitly it is determined automatically from number of ports used. https://github.com/NodeBB/NodeBB/blob/master/loader.js#L108

    So if you are only running a single nodebb process on each server but using multiple servers you need to manually set it to true so that the nodebbs use redis pubsub to communicate.

    Link Preview Image NodeBB/src/pubsub.js at master · NodeBB/NodeBB

    Node.js based forum software built for the modern web - NodeBB/src/pubsub.js at master · NodeBB/NodeBB

    favicon

    GitHub (github.com)

    If all the nodebb processes are one the same physical server they can just communicate through IPC, if cluster is set to true they will use redis

  • How add username to panel header?

    Solved
    8
    0 Votes
    8 Posts
    512 Views
    barisB

    On latest version of NodeBB you no longer need the js code, since the logged in user is provided in the loggedInUser object. So you can use the below html widget.

    <div class="mypanel123">Welcome to forum, <a href="/me">{loggedInUser.username}</a></div>
  • 0 Votes
    5 Posts
    203 Views
    CannybirdC

    @baris @saikarthikp9 , It worked. thank you!

    home.JPG

    Footer.2.JPG

  • Multiple domain (pwa, sitemap, plugins)

    Solved
    2
    0 Votes
    2 Posts
    136 Views
    PitaJP

    NodeBB doesn't really support multiple domains, and we recommend you redirect one to the other instead.

  • Get list of topics from API

    Moved
    5
    0 Votes
    5 Posts
    243 Views
    barisB

    You can control the maximum pagination on /recent with the acp setting below.

    image.png

  • Missing Submit bar/button in New Topic on Mobile

    Solved
    9
    0 Votes
    9 Posts
    516 Views
    barisB

    This is fixed now, will be available in 3.5.2. Thanks for reporting.

  • how to change the width of the group name?

    Solved
    5
    0 Votes
    5 Posts
    184 Views
    RodionR

    Thank you very much! Very helpful)
    I didn't think it was that simple)

  • Exclude Specific Category in RSS Feed

    Solved
    3
    0 Votes
    3 Posts
    131 Views
    T

    @baris okay thanks for the info!

  • Client side script seems to not work on page change

    Solved
    24
    0 Votes
    24 Posts
    894 Views
    barisB

    @frostzn yeah that explains it, when you click to go to another page an ajaxify starts and when you try to call ajaxify.go('login') it is getting caught by that code because the previous one hasn't finished yet.

    We will release 3.5.1 this week 👍

  • 0 Votes
    4 Posts
    854 Views
    omegaO

    @phenomlab Bingo... Worx! Thanks 🎉

  • Incorrect text after registration

    Unsolved
    2
    0 Votes
    2 Posts
    100 Views
    barisB

    @Kevin1312 the translations for german can be found in the folder, /nodebb/public/language/de/register.json. If you want to fix it for everyone you can do so at https://explore.transifex.com/nodebb/nodebb/

  • Showing Top Poster in v1.18.5

    Moved
    7
    0 Votes
    7 Posts
    256 Views
    crazycellsC

    @wndfh I think @baris is already helping you, but I also would like to bring this plugin to your attention...

    it is not what you asked for, but related, so you might be interested in using this as well:

    Link Preview Image most popular posts of the forum

    This is an enhancement request similar to the most popular topics... Currently, when we click "popular" icon on the top, the popular page lists the topics wi...

    favicon

    NodeBB Community (community.nodebb.org)

  • Is there a way to add the language selection to the sidebar?

    Unsolved
    2
    0 Votes
    2 Posts
    122 Views
    barisB

    Yes, but you need some custom js. You would need to insert a dropdown for the languages and then make an api call to set the users language and refresh the page.

  • Having trouble with clustering

    Solved
    3
    0 Votes
    3 Posts
    105 Views
    N

    Hello Julian,

    Thank you for the response. I have checked and these are the errors that I have received.

    nodebb@localhost:~/nodebb$ ./nodebb dev NodeBB v3.5.0 Copyright (C) 2013-2023 NodeBB Inc. This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. For the full license, please visit: http://www.gnu.org/copyleft/gpl.html Clustering enabled: Spinning up 2 process(es). 2023-11-09T02:02:11.955Z [4568/16724] - verbose: * using configuration stored in: /home/nodebb/nodebb/config.json 2023-11-09T02:02:11.950Z [4567/16723] - verbose: * using configuration stored in: /home/nodebb/nodebb/config.json 2023-11-09T02:02:11.964Z [4567/16723] - info: Initializing NodeBB v3.5.0 http://localhost:4567 2023-11-09T02:02:11.964Z [4567/16723] - verbose: * using mongo store at 127.0.0.1:27017 2023-11-09T02:02:11.965Z [4567/16723] - verbose: * using themes stored in: /home/nodebb/nodebb/node_modules 2023-11-09T02:02:12.054Z [4568/16724] - error: Error: redis-required-for-pubsub at get (/home/nodebb/nodebb/src/pubsub.js:51:9) at Object.on (/home/nodebb/nodebb/src/pubsub.js:63:3) at module.exports (/home/nodebb/nodebb/src/cache/lru.js:105:9) at module.exports.create (/home/nodebb/nodebb/src/database/cache.js:5:9) at module.exports (/home/nodebb/nodebb/src/database/mongo/hash.js:6:36) at Object.<anonymous> (/home/nodebb/nodebb/src/database/mongo.js:187:24) at Module._compile (node:internal/modules/cjs/loader:1376:14) at Module._extensions..js (node:internal/modules/cjs/loader:1435:10) at Module.load (node:internal/modules/cjs/loader:1207:32) at Module._load (node:internal/modules/cjs/loader:1023:12) 2023-11-09T02:02:12.056Z [4567/16723] - error: Error: redis-required-for-pubsub at get (/home/nodebb/nodebb/src/pubsub.js:51:9) at Object.on (/home/nodebb/nodebb/src/pubsub.js:63:3) at module.exports (/home/nodebb/nodebb/src/cache/lru.js:105:9) at module.exports.create (/home/nodebb/nodebb/src/database/cache.js:5:9) at module.exports (/home/nodebb/nodebb/src/database/mongo/hash.js:6:36) at Object.<anonymous> (/home/nodebb/nodebb/src/database/mongo.js:187:24) at Module._compile (node:internal/modules/cjs/loader:1376:14) at Module._extensions..js (node:internal/modules/cjs/loader:1435:10) at Module.load (node:internal/modules/cjs/loader:1207:32) at Module._load (node:internal/modules/cjs/loader:1023:12) [cluster] Child Process (16724) has exited (code: 0, signal: null) [cluster] Child Process (16723) has exited (code: 0, signal: null) nodebb@localhost:~/nodebb$

    Oh, I think I know why. I totally missed the "Configuring Redis if multiple processes was used". I subconsciously thought that Redis section was related to the Database type to be used like TigerEngine.

    My bad 😞

  • Custom fields for user information

    Moved
    2
    0 Votes
    2 Posts
    257 Views
    S

    @julian @baris Is there a reason why adding custom fields is not part of the core? I am developing a plugin for this right now, and I wanted to understand the reasoning for not doing this as part of the core or if it was in the future pipeline. Also want to assess how much effort I should put into it.

  • Reindex after data loss?

    Unsolved
    7
    0 Votes
    7 Posts
    223 Views
    julianJ

    @tigger thanks! Seems like redis gave you ample opportunity to shoot your own foot 😬

  • Emoji's all out of order.

    Unsolved
    3
    2 Votes
    3 Posts
    149 Views
    omegaO

    @julian 3.5.1 FTW! 💪 🙃 ...or plugin update, which ever applies 😉

  • I can't Upload a file to a specific post via API

    Unsolved
    2
    0 Votes
    2 Posts
    132 Views
    julianJ

    The file upload API is quite hard to use, I'll grant you that... I think it would need to be rewritten so it can be properly consumed by third-parties. Right now I think it only really works well with the built-in tools in the frontend.

  • 0 Votes
    9 Posts
    286 Views
    Eduardo SilvaE

    Thanks, @baris! Helpful as always 🙂