Skip to content

NodeBB Development

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

3.5k Topics 22.2k 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.

    805 Topics
    5k Posts
    赵帅更

    Is anyone using WeChat to scan and log in? The plugin seems to be malfunctioning. Does anyone have a solution? Thx.
    Plugin: https://github.com/NodeBB-China/nodebb-plugin-sso-wechat-web

  • 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

    43 Topics
    500 Posts
    pfefferle@mastodon.socialP

    @julian sure, I will send you a DM!

  • Help Translate NodeBB
  • [Question] Wird problem with my plugin.

    11
    0 Votes
    11 Posts
    4k Views
    A

    @pichalite yep it looks like this worked now when i tested! Tnx alot!

    @julian it looks like i got my stuff working now 😉 Im helping Beam.Pro on they forums for the beam login plugin 😉

  • Wiki style page editing?

    8
    0 Votes
    8 Posts
    3k Views
    George GidimG

    I looked around and I couldn't find any wiki's using Raneto, I guess the main developer's site has it in use but just wanted to see how others used it for a more traditional wiki look.

  • 0 Votes
    6 Posts
    3k Views
    B

    Disney is notoriously litigious, in addition to a slew of other questionable elements.

  • [question] Collaboratively edited posts

    2
    0 Votes
    2 Posts
    1k Views
    KowlinK

    I doubt this has been explored at all, since this being a forum software in general and not something like Google Docs or any other collaborative software out there in the wild. I would like to see it as something Discourse has with there "Wiki Posts" but I won't suspect it to be even a low priority for the devs.

  • 1 Votes
    5 Posts
    3k Views
    codejetC

    @Kowlin said:

    On a real life forum

    I can already see you standing in front of a board. 😉 Anyhow besides my terrible joke I know you can keep the post alive by pressing the + on the bottom right of the screen to keep the post alive, but as far as I know there is no guarantee that it will save it for longer periods. I also think that this can be done as a plugin.

    Yeah.. I with you there and can totally understand the point to a streaming forum like nodebb, still we all make mistakes and this would be a nice addition. Would save so much typing 😓

  • How can I programmically create topics from a nodejs script?

    Unsolved
    2
    1 Votes
    2 Posts
    1k Views
    yariplusY

    I'd use one of the importer plugins if one is available. e.g. https://github.com/psychobunny/nodebb-plugin-import-phpbb

  • Get all users from REST API

    2
    1 Votes
    2 Posts
    2k Views
    barisB

    I think this is available on master, once we release 1.0.0 you will be able to get the users by adding ?page=x

  • Importing tpl inside another tpl

    11
    2 Votes
    11 Posts
    4k Views
    yariplusY

    @exodo Cool! That's a great idea.

    You could actually keep it like that if you are loading my code only when the button press or swipe happens, because it would also update the list.

    require(['translator'], function (translator) { $('button.topics-panel').click(function(){ $.getJSON('/api/recent', function (json) { templates.parse('yourtemplate', json, function (html) { translator.translate(html, function (translated) { $('.topics-panel').html(translated); }); }); }); }); });
  • Disabling slide out touch event

    6
    0 Votes
    6 Posts
    3k Views
    A

    @psychobunny said:

    Maybe this might help?

    Link Preview Image File not found · NodeBB/nodebb-theme-persona

    Persona - A modern and responsive NodeBB theme. Contribute to NodeBB/nodebb-theme-persona development by creating an account on GitHub.

    favicon

    GitHub (github.com)

    We would have to export the slideout object for other libraries to use

    Yeah, I was trying a hacky solution with just a JS touch library and activating the slide out event, but it didnt work out well. I'll have to wait patiently for a better solution to appear.

  • Is it the "mark no read" button workin yet?

    2
    0 Votes
    2 Posts
    916 Views
    julianJ

    It marks a topic unread. Technically, it should also send you back to the category view... or at the very least, pop up an alert...

    gh#4101

  • Intercept uploaded image before imgur plugin

    4
    0 Votes
    4 Posts
    2k Views
    P

    @Bri thanks... I figured that out... I am actually looking to see if I can make the plugin open a modal for some user input.

  • Make default enable sound in user profile

    1
    1 Votes
    1 Posts
    829 Views
    olegO

    All new users have the option sound disabled, maybe u can make function in admin/settings/user to enable it by default for new users?

  • 0 Votes
    3 Posts
    1k Views
    SuperMikeS

    @baris Chrees! This really helps. 👍

  • 0 Votes
    5 Posts
    2k Views
    P

    @julian Whaaaaaat??? 😢

    I will try to submit a PR. It's probably better to do a breaking change before v1.0.0

  • 0 Votes
    4 Posts
    2k Views
    yariplusY

    You can't call them directly from the client. I usually use socket.io, you define an event in your library file where you get the data, and then call it in the acp script.

    library.js

    var socketAdmin = module.parent.require('./socket.io/admin'); var Groups = module.parent.require('./groups'); var User = module.parent.require('./user'); socketAdmin.yourplugin = { // This function is now exposed as the event 'admin.yourplugin.someevent' someevent: function (socket, data, callback) { // Use the data from the client to grab member objects. Groups.getMembers(data.groupName, data.start, data.stop, function (err, uids) { if (err) return console.log(err); User.getUsersData(uids, function (err, members){ callback(null, {members: members}); }); }); } };

    acp.js

    // Send the group name with the amount of members we want to the server. socket.emit('admin.yourplugin.someevent', {groupName: "GroupName", start: 0, stop: 200}, function (err, data) { // Log the response, should be an array of user objects. console.log(data.members); });
  • 0 Votes
    16 Posts
    7k Views
    thuanpq.ioT

    @julian said:

    won't do anything if the array is empty

    I guess the problem is that latest release of template.js does not allow another the loop inside a template, then I have to declare that loop in another template and include into my item.tpl

  • Best posts made by user

    10
    9 Votes
    10 Posts
    4k Views
    julianJ

    @Schamper said:

    Maybe should show some information as to why it's your best post? E.g. views/replies/upvotes.

    I imagine it's purely based on upvotes. None of NodeBB's subjective algorithms are complex in any way, really 😆 (mainly talking about "popular" here)

  • Is NodeBB still free?

    Solved
    6
    0 Votes
    6 Posts
    5k Views
    P

    @julian said:

    That's not a bad idea... we just don't have plans to split the sites yet.

    I understand that you don't want to split up anything, but how about mentioning the OpenSource version at all? 🙂
    Right now, when I go to nodebb.org, the only chance to see that there is a free version that I can roll out myself is to know what the github logo looks like and then scroll down all the way to the bottom to spot it there (very small, barely visible).
    Additionally, if I have AdBlock Plus turned on, these social buttons do not appear at all.

    I perfectly understand that you want to earn money and therefore want to focus the page around your hosting service but I think that you could significantly cut the amount of requests from people who heard about a cool OpenSource forum and who now struggle to find a link to download it.

  • Stop auto load installed plugins tab

    3
    1 Votes
    3 Posts
    1k Views
    A

    Bad idea to batch install plugins.

    If ones not compatible with your version of nodebb, you're in for a world of hurt diagnosing which plugin is giving you issues.

  • 1 Votes
    2 Posts
    1k Views
    barisB

    See https://github.com/NodeBB/NodeBB/issues/4033