Skip to content

NodeBB Development

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

3.5k Topics 22.1k Posts

Subcategories


  • Posts from the NodeBB Development Blog
    96 Topics
    778 Posts
    julianJ

    Occasionally, we will get asked whether there are any differences between our hosted service and the open source project.

    It is as though we are holding back some great features and only allowing our paying customers access them! Conversely, it could be assumed that because we are hosting the software for others, that we would somehow out of self-interest or for economic reasons, deliver an inferior version with limitations.

    I'd like to say upfront that this is not the case for NodeBB.

    When you use our hosted service, you receive the same great NodeBB software that you can get for free off of our GitHub repository.

    What we're selling is support, maintenance, upgrades, and peace of mind delivered by our world-class† support team.

    You definitely can host NodeBB on your own! We've strived for years to deliver a piece of software that runs lean and fast on minimal hardware, great docs (some contributed by other admins!) that help you get up to speed quickly, and a fantastic community that will help you if you get stuck.

    The reason I take this principled stand is simple — I think it's unfair when artificial limitations are placed on software just for the purpose of getting customers to pay more.

    We've seen all this time and time again:

    You can't install any plugin you want, just a select few from a small list You can only have X units (tickets, posts, etc) of whatever you're using You can only have X admins/owners You can't see any messages older than X days

    These limitations are all artificial, and serve to restrict the use of something to the bare minimum. Anything extra is — of course — available for the right price.

    We don't do that. We tell everybody that NodeBB is powerful enough to run huge communities, and we stand by it. We tell everybody that NodeBB is flexible enough to look and function however you want, and we stand by it.

    These are the real limitations we impose on our hosting service:

    Hard drive space for uploads are imposed by our upstream provider and are set, though we are happy to add additional drive volumes for a fee) We have soft "pageview" limits that any user on our hosting can exceed (in fact, many do). We set them purely as a benchmark for the point at which your NodeBB may slow down depending on the type of load that you get, and encourage dialogue to make sure that you're on the right plan (server resources, etc.) We do not allow shell access for security reasons (and if you needed it, you probably could self-host)

    So please do rest assured when I and others tell you that what you see is what you get. No more, no less. I'd rather everybody get to use the best of NodeBB, instead of serving a special feature-reduced version for others.

    † I'm going to go out on limb here and say that we're probably the most qualified people to maintain NodeBB. Feel free to disagree 😉

  • You have a cool idea about NodeBB? Post it here.

    804 Topics
    5k Posts
    Bharat RathiB

    Also, how can we have moderation for posts with images? Like any post with an image should be places in post-queue first and be approved from mods before posting.

  • Found a bug? Why not make a bug report here?
    1k Topics
    7k Posts
    barisB

    Created an issue https://github.com/NodeBB/NodeBB/issues/12474

  • Focused discussion related to ActivityPub integration in NodeBB

    40 Topics
    442 Posts
    trwnh@mastodon.socialT

    @julian @rimu i think that was rimu actually, although i can probably give a summary

  • Help Translate NodeBB
  • cache-buster change

    1
    5 Votes
    1 Posts
    1k Views
    barisB

    Please see https://github.com/NodeBB/NodeBB/issues/3573

    If you have a custom theme, you should switch to using cache-buster in your header.tpl

  • Importing Categories

    9
    0 Votes
    9 Posts
    2k Views
    WilliamW

    Thanks for all the help, turns out it was because I hadn't installed the dependencies for write-api 😑

  • Like the new ACP? Check out what's next...

    6
    7 Votes
    6 Posts
    2k Views
    LLLRHL

    Look forward to new ACP
    @flag Nice!

  • Introducing the NodeBB 0.7.0 Persona preview

    Moved
    145
    27 Votes
    145 Posts
    147k Views
    C

    Yeh its fixed in latest 🙂

  • We now have a Gruntfile...

    8
    4 Votes
    8 Posts
    3k Views
    H

    Ignore me. The docs answer my question:

    Run grunt to start up NodeBB and watch for code changes.

    🙂

  • NodeBB v0.7.3

    Moved
    32
    7 Votes
    32 Posts
    23k Views
    Charly86C

    @baris
    I ever don't know how I missed that one, you're absolutly right 😉 I updated the post according to this error!

  • NodeBB Package Manager, scheduled downtime

    2
    1 Votes
    2 Posts
    1k Views
    JenklerJ

    Good to know, shit happens sometime 😛

  • 0 Votes
    2 Posts
    2k Views
    yariplusY

    Are you using the custom-page plugin?

    It seems rbeer fork might fix this, otherwise you have to copy the template manually as leksar says.
    https://community.nodebb.org/topic/1701/nodebb-plugin-custom-pages-custom-static-pages-for-nodebb/48

    Also, if you're talking about hand coding the template in the public directory, those are always deleted on restart. The template in the plugin's template folder is what should be modified.

    But I'm also having other issues with custom-pages, so I'm not even sure if that works tbh.

  • How to modify rendering template ?

    5
    0 Votes
    5 Posts
    2k Views
    SuperMikeS

    @psychobunny thanks! that's really helpful

  • 2 Votes
    12 Posts
    5k Views
    julianJ

    If package.json recommends a version of a bundled plugin, stick to that version. In your case, stick with v1.0.9.

  • Moderators can't lock/sticky topics?

    3
    0 Votes
    3 Posts
    1k Views
    JamesJJ

    I'm running v0.7.2
    I'll check on my testing account.

    Edit
    Sorry, after checking through my group's permissions it has seemed to remove all those permissions. My guess would be that I recently renamed my group from 'Mod' to 'Staff'. I think a neat feature would be global permissions, so rather than me having to go through my twenty odd categories, applying all the permissions, I can just give site-wide permissions to a group.

    Thanks anyways.

  • Group categories/topics

    1
    0 Votes
    1 Posts
    913 Views
    G

    Is it possible to limit the list of recent topics in the group list, not to members, but rather to categories that a group has access to? Or a way to list all categories that a group has access to?

  • 0 Votes
    8 Posts
    3k Views
    julianJ

    Your best bet might to just be calling plugins.fireHook('filter:parse.post'); 😄

  • Setting tooltips on widgets

    7
    0 Votes
    7 Posts
    2k Views
    E

    @yariplus said:

    Hmm, maybe try resetting your browser cache. Browser might be caching that widget's .tpl file and won't see the updated class.

    working now thanks mate 👍

  • Best method to script posts

    3
    0 Votes
    3 Posts
    1k Views
    julianJ

    You may want to take a look at the Write-Enabled API. Might be helpful from a scripting perspective!

  • 0 Votes
    10 Posts
    3k Views
    Zig.gyZ

    @julian

    There is another simple request I have for you:

    Do you see the "Cancel" and "OK" on the message box on the screenshot below? They aren't available for translation on Transifex as well. I would be pleased if you give me a chance to translate them. Thanks

    Image:
    upload-3ba2294f-bfdf-478d-8962-bf35af21f0ad

  • Is it possible to rename routes?

    Solved
    5
    0 Votes
    5 Posts
    3k Views
    H

    @julian thanks. I'll give it a try!

  • How to invoke filter:topic.search ?

    1
    1 Votes
    1 Posts
    832 Views
    SuperMikeS

    I am working on a search plugin.

    There're two filters available for topic & post :

    filter:search.query plugin.search = function(data, callback) { winston.info('enter search') winston.info(data) return callback(null, []); }; filter:topic.search plugin.searchTopic = function(data, callback) { winston.info('enter topic search') winston.info(data) return callback(null, []); };

    now I can see the log in search after I search something, as well as advanced search. But searchTopicnever show.

    Can someone tell me how to invoke this filter ?

  • NodeBB v0.7.2

    Moved
    6
    11 Votes
    6 Posts
    6k Views
    JenklerJ

    Love this ❤

  • Node.js sokets

    4
    0 Votes
    4 Posts
    1k Views
    C

    I don't know of any plugin that is already built to do what you want. Like most of the rest of us, you will likely have to write some Node JavaScript to create the plugin to suit your needs. I don't have the time to write custom code for free, although if it is worth money to you, the NodeBB development team may be interested in consulting for you.
    Now that I re-read what you originally asked, I'm curious if you actually need "Sockets" (as in SocketIO, which is server-initiated TCP/IP connection to a browser) or if APIs on both the hosted NodeBB server and the localhost server would do this better.
    Either way, if you choose to go the NodeBB plugin route, you will need to know which Hooks are available. A "hook" is an event that your plugin subscribes to. When that event happens in the core NodeBB server, it will call the function in your plugin which subscribes to the event.