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.

  • Global moderators unable to change email addresses

    Unsolved
    2
    1 Votes
    2 Posts
    112 Views
    barisB

    @alejandrocobo thanks for reporting. I created an issue to track https://github.com/NodeBB/NodeBB/issues/12057

  • NTFY: NodeBB

    24
    0 Votes
    24 Posts
    2k Views
    phenomlabP

    @julian Confirmed working - thanks.

  • 0 Votes
    4 Posts
    188 Views
    phenomlabP

    @tecy Happy to help. I am a "former" Plesk user so understand all of it's nuances!

  • 0 Votes
    7 Posts
    380 Views
    tecyT

    Hi folks,

    I am grateful, that I can give something back to the community.
    This is only the short excerpt of the console.
    But the forum is working 😄

    Basically, I was just installing the modules, which nodebb meant where missing.
    that did the job.

    This is my solution,
    may it be helpful to others.

    $ ./nodebb upgrade Error: Cannot find module '/opt/nodebb/node_modules/request-promise-native/lib/rp.js'. $ npm install request-promise-native $ ./nodebb upgrade error: uncaughtException: Cannot find module 'request-promise-core/configure/request2' $ npm install request-promise-core $ ./nodebb upgrade error: Error: Cannot find module 'stealthy-require' $ npm install stealthy-require NodeBB v3.4.2 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 1 process(es). 2023-09-27T12:18:09.201Z [4567/2922161] - info: Initializing NodeBB v3.4.2 [...] 2023-09-27T12:18:11.071Z [4567/2922161] - info: [api] Adding 0 route(s) to `api/v3/plugins` 2023-09-27T12:18:11.087Z [4567/2922161] - info: [router] Routes added 2023-09-27T12:18:11.090Z [4567/2922161] - info: 🎉 NodeBB Ready 2023-09-27T12:18:11.091Z [4567/2922161] - info: 🤝 Enabling 'trust proxy' 2023-09-27T12:18:11.093Z [4567/2922161] - info: 📡 NodeBB is now listening on: 0.0.0.0:4567 2023-09-27T12:18:11.093Z [4567/2922161] - info: 🔗 Canonical URL:
  • Simplemachines (SMF) 2.1.x import?

    Unsolved
    4
    0 Votes
    4 Posts
    252 Views
    oplik0O

    @Themistocles-Papassilekas said in Simplemachines (SMF) 2.1.x import?:

    However, are you talking about some specific SMF exporter? I haven't seen any on the SMF side!

    They're probably talking about nodebb-plugin-import which works alongside an exporter plugin like nodebb-plugin-import-smf by providing a common API for the exporters to use (and yeah, exporter plugins have import in the name... Makes a bit of sense since nodebb-plugin-export-smf would suggest it's exporting to SMF, but it's still a bit weird)

    I'm not sure how well maintained that is honestly, but NodeBB database schema hasn't seen any major changes in the last few years - still, the best idea might be to follow what the readme offers, install NodeBB 1.12.1, import data from SMF and then upgrade NodeBB to 3.x. Though note that you'll probably want to switch to Harmony theme after upgrading, since you'll be defaulted to the old Persona theme 🙂

    The bigger question is whether the SMF plugin will work with 2.1.4, since it was tested on 2.0.3 and hasn't been updated in the last few years

  • Markdown and Composer plugins error

    Unsolved
    3
    0 Votes
    3 Posts
    159 Views
    Axen QexsaA

    I was just restarting, but now I'm going to rebuild. Seeing a Turkish admin makes me very happy

  • Forum content keeps getting deleted

    Unsolved
    9
    0 Votes
    9 Posts
    357 Views
    phenomlabP

    @PitaJ Yes, only use Redis for Clustering - DB is Mongo 🙂

  • Action event (client side) for creating and updating posts

    Unsolved
    23
    0 Votes
    23 Posts
    1k Views
    phenomlabP

    @baris Perfect! Thanks 🙂

  • How to add a panel of users and connected in real time?

    Unsolved
    2
    0 Votes
    2 Posts
    126 Views
    barisB

    Only I see that there is an option to add a panel on the home page with how many are registered and how many are connected in real time and a few other things, and I don't know how to add it.

    Can you share a screenshot of this? It sounds like the board stats widget

  • csrf invalid - socket.io

    Solved
    12
    0 Votes
    12 Posts
    526 Views
    julianJ

    To be honest NodeBB shouldn't require the reverse proxy to pass the protocol in, I will have to take a closer look as to why that is needed.

  • 0 Votes
    7 Posts
    278 Views
    L

    @baris Thanks a lot, it's working now ^_^
    I will wait for the RSS plugin 🙂

  • Testing Ultrawide Mode

    Unsolved
    6
    0 Votes
    6 Posts
    182 Views
    DownPWD

    seems this distorts the recent card, I have the impression that I cannot widen the reading area without the div where the Recent Card is present ? right @phenomlab ?

  • Session Mismatch errors

    Unsolved
    7
    0 Votes
    7 Posts
    269 Views
    R

    It finally happened again, Looks like app.user.uid doesn't match the logged in user uid as app.user.id is set to 0 while the uid is 2.
    It all starts working again as soon as I flush the Cloudflare cache.
    Where are the app values gettting set?

    screenshot-app.datadoghq.com-2023.09.14-17_35_09.png

  • Email test ssl error

    Solved
    2
    0 Votes
    2 Posts
    105 Views
    T

    The error mysteriously disappeared and was replaced by an authentication error. I managed to have my Postmark account unlocked (btw, their support team was way much better than that of Sendgird, which still hasn't responded for 2 days since I requested till I am typing right now) and found that to use Postmark in Nodemailer you have to set the server api token as both the username and the password. This is quite counter intuitive, in my opinion.

    And I finally figured out that, the test email button works on your last saved settings, not what you are editing in the input boxes right now.

    So now Postmark is working. Thank God.

  • Generating User Token in v3

    Unsolved
    2
    0 Votes
    2 Posts
    117 Views
    julianJ

    @ron-murhammer https://docs.nodebb.org/api/write/#tag/users/paths/~1users~1{uid}~1tokens/post

    Did you pass in a csrf token?

  • How to Expand only one Sidebar?

    Solved
    4
    0 Votes
    4 Posts
    218 Views
    barisB

    @brazzerstop you can change this line to const sidebarEl = $('.sidebar.sidebar-left');

    That should cause the >> button to only open/close the left sidebar.

  • 0 Votes
    3 Posts
    176 Views
    T

    @baris I tested this yesterday and it works now! Thank you!

  • Build in advance/single executable to deploy

    Solved
    6
    0 Votes
    6 Posts
    215 Views
    T

    @julian Yeah, I totally should have expected this, after bundling up so many times several Vue projects these years, during which my CPU fan always screams and screeches.

  • Can not delete or edit post

    Unsolved
    2
    0 Votes
    2 Posts
    108 Views
    DownPWD

    nothing in log/console ?

  • Login Unsuccessful After Domain Change

    Solved
    4
    0 Votes
    4 Posts
    126 Views
    ww9riversW

    @phenomlab It seems that I may have it fixed.

    As I could log in using the old domain, I took out the Session cookie domain setting in the admin section. Then log in using the new domain started to work. Actually, both domains work now.

    Earlier I changed that value from the old domain name to the new domain. But that didn't work. Then I saw a tip under the setting box that reads "Leave blank for default". So I made it blank. I assume that the default is the host name in the HTTP request?

    I want to think you for your writing. That lead me to the right direction.