Skip to content

NodeBB Development

Stay tuned here to hear more about new releases and features of NodeBB!

2.8k Topics 18.6k Posts

Subcategories


  • Posts from the NodeBB Development Blog
    96 Topics
    780 Posts
    kainosK
    Very good Vlad. I am Vladislav.
  • Found a bug? Why not make a bug report here?
    1k Topics
    7k Posts
    julianJ
    @elkd Running ./nodebb build is an interactive command that outputs the build state in real-time. Can you paste the log output from running that command?
  • Focused discussion related to ActivityPub integration in NodeBB

    111 Topics
    2k Posts
    trwnh@mastodon.socialT
    @scott the thread drifted a lot from “showing software icons” to “interoperability is the goal of software” to me disagreeing with that last bit
  • Help Translate NodeBB
  • Custom Reputation Plugin

    1
    1 Votes
    1 Posts
    1k Views
    M
    I was looking through the docs, but could not find this. Sorry if I missed it. Is there a way to see how exactly the reputation system works, without browsing the source code? If I wanted to implement some very specific rules, how easy/hard is it to customize? Could I just write my own reputation plugin and swap it out?
  • Template/logic: IF ELSE inside another IF ELSE

    3
    0 Votes
    3 Posts
    2k Views
    agarcia17A
    @Baerrus oh ok thank you
  • npm ERR! extraneous: [email protected]

    5
    0 Votes
    5 Posts
    4k Views
    BaerrusB
    I got it, now that I understand what installs redis. The way I upgrade is I create a brand new workspace, install a new version of nodebb, copy over the config.json. I think that makes sense in real deployment scenario versus executing "git pull" in place. This way I retain a fully functional prior version installation I can fall back to in a instant should something fail with a new version.
  • header.tpl changes

    3
    2 Votes
    3 Posts
    3k Views
    BaerrusB
    @baris I started working on a more SEO friendly theme/plugin. I hoped I could keep all the changes within a lavender derived theme, but I cannot. Some changes will be in the core. FOr example, server side rendered pagination. I am looking for some advice on how to coordinate making changes in a theme and core nodebb?
  • websocketAddress setting change

    1
    0 Votes
    1 Posts
    2k Views
    barisB
    This was a setting under admin>settings>sockets it has been moved to config.json. Old name was websocketAddress now its just address under the socket.io object. Sample config.json { "url":"yourforum.com", "socket.io": { "address": "", //or url to socket.io server "transports": ["websocket", "polling"] } } Relevant commit: https://github.com/NodeBB/NodeBB/commit/14e46a87a63f5e983a58a73109710027297924f3 The reason is if you put a invalid value here sockets will not connect and since the admin page uses sockets to save settings you can't change it back.
  • 0.6.0 Breaking Changes

    25
    3 Votes
    25 Posts
    16k Views
    barisB
    Updated with header.tpl changes, relevant thread https://community.nodebb.org/topic/3488/header-tpl-changes
  • Nodebb ranks poorly on PageSpeed Insights

    7
    0 Votes
    7 Posts
    3k Views
    A
    @peter setting the number of recent posts on the homepage to 0 got me my 100% usability on mobile. As it removes a lot of the padding issues that it complains about, read more being the main culprit. It's not big enough for mobile.
  • Are Chat messages ever deleted?

    8
    0 Votes
    8 Posts
    4k Views
    MegaM
    @a_5mith @Ted Thank you!
  • Widget system

    2
    0 Votes
    2 Posts
    1k Views
    barisB
    https://github.com/NodeBB/nodebb-widget-essentials/blob/master/library.js#L80-L113 Should give you some ideas, the active users widget changes behaviour based on where it is displayed, if its inside a topic it shows the poster in that topic, if its inside a category it shows recent posters in that category etc. widget.area.url gives the url of the page the widget is in.
  • Simple tags

    8
    0 Votes
    8 Posts
    121k Views
    A
    @h_kirk said: I see the predicament. Nasty job to generalize that problem Strtolower solves 100% of issues.
  • Administration translation at transifex?

    2
    0 Votes
    2 Posts
    2k Views
    julianJ
    @priapo At present, it's lower priority, as it's much easier to maintain the templates for NodeBB when they are all in English. However, if there is a need for it, then we will consider the demand when prioritising our tasks
  • config.json cluster change

    5
    2 Votes
    5 Posts
    8k Views
    wzrdtalesW
    Finally the pull request is open https://github.com/NodeBB/NodeBB/pull/2527. I'm out for today guys, hope you get everything. If not just ask, gn8.
  • Possible to catch custom socket messages in a plugin?

    6
    0 Votes
    6 Posts
    2k Views
    julianJ
    @riteshsanap A bit of a hint can be found here
  • hot deploy of plugins?

    2
    0 Votes
    2 Posts
    1k Views
    A
    @Macrow-Willson said: Hi, just checkin in, I know Node can be quite clumsy in that matter and I am wondering how to deploy plugins on the production server, do i need to restart the entire instance? thank you! Just reload NodeBB from the ACP. Does the same thing, but doesn't take the site offline.
  • Invalid CSRF token

    8
    0 Votes
    8 Posts
    7k Views
    mootzvilleM
    I figured out my issue... MongoDB user I was using had a readWrite role, but I guess it needs the dbAdmin role as well. When I tried creating a new user in the nodebb admin area, then it would make things go wonky without the dbAdmin role and result in invalid csrf tokens.
  • This topic is deleted!

    Locked
    9
    0 Votes
    9 Posts
    56 Views
  • New Settings Framework

    7
    3 Votes
    7 Posts
    3k Views
    frissdiegurkeF
    @BDHarrington7 If you're referring to the master-branch the problem is that you cache the value of var userExt = settings.get('strings.extensions'); (and some further operations) once at plugin-start and don't refresh those values after settings.sync(); (within a callback). So you need to re-calculate the regex variable within a callback for settings.sync.
  • Lavender Theme: auto append new topic feature

    3
    0 Votes
    3 Posts
    2k Views
    agarcia17A
    ohhhh ok, got it! thanks @baris
  • nodebb-plugin-homepage-api: Getting content of mainPid?

    2
    0 Votes
    2 Posts
    2k Views
    agarcia17A
    nvm, I got it working. I was confused how async.each() worked..! here's what I ended up with: function getMainPost(topics, callback) { posts.getPostFields(topics.mainPid, ["content"], function (err, data) { topics.content = data.content; callback(null); }); } function getRecentTopics(category, callback) { categories.getCategoryTopics(category.cid, 0, parseInt(category.numRecentReplies, 10), uid, function (err, data) { var topics = data.topics; category.topics = topics; category.topic_count = topics.length; async.each(topics, getMainPost, function (err) { callback(null); }); }); } async.each(categoryData, getRecentTopics, function (err) { next(err, categoryData); });
  • middleware.admin.isAdmin is not needed

    3
    0 Votes
    3 Posts
    1k Views
    julianJ
    @pitaj Yes, isAdmin() is the middleware, whereas isAdministrator is the library method. They are functionally similar, except the middleware handles redirecting the user to 403