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
  • Is NodeBB compatible with PM2?

    7
    0 Votes
    7 Posts
    3k Views
    julianJ

    @Joseph-Mordica What features of pm2 do you use? If it's just to allow for horizontal scaling by having NodeBB instances use up all cores, then it's possible that we will bake that into our loader executable in future releases of NodeBB...

  • Socket.io v1.0 released!

    10
    4 Votes
    10 Posts
    6k Views
    T

    Sounds like great news, looking forward to seeing NodeBB bloom using it 🙂

  • Login via Home

    5
    0 Votes
    5 Posts
    5k Views
    T

    Thanks I'll give it a shot!

  • Do you guys need more programmers?

    3
    0 Votes
    3 Posts
    1k Views
    P

    Totally, the more the merrier 🙂 In the end we're just a community helping each other build something cool and free to use

  • 0 Votes
    8 Posts
    4k Views
    B

    @baris thanks!

    I don't like to brag 😛 but I kinda figured this out 16h ago

    I was checking uid==0 and skipping that out from deletion, but kept getting deleted. My admin uid kept incrementing for every node app --setup, so I looked at the schema again.

    but thanks your helper methods were extremely helpful.

  • 0 Votes
    1 Posts
    1k Views
    J

    In my topic.tpl I made some changes using @first to separate first post in topic from others. It worked, but there is now next problem. When i create a new post it doesn't show it instantly, I have to refresh page to see that post.

    This is how my topic.tpl looks now http://pastebin.com/jYNQ1WVr

    Also, I noticed this http://screencast.com/t/jESEIi9GiY . Instead of just creating one more <li> in .otherPosts div it creates another .firstPost and .otherPosts div.

    I think that maybe I made some mistake with using @fist but I can't figure out what is it. Someone help? 🙂

  • Page loads content only when i refresh it

    6
    0 Votes
    6 Posts
    2k Views
    J

    @a_5mith @psychobunny Thank you both. 🙂 So the error is removed and cache is cleared, so now it works like it should. ^^

  • filter:post.getPosts change

    1
    0 Votes
    1 Posts
    822 Views
    barisB

    This is coming in 0.5.1. Previously this hook was passed a topic id and an array of posts. It was assumed that all the posts are from the same topic but this is no longer the case. So the topic id is removed. If you are using this hook you can get a list of the topic ids from the posts array. See this commit for the change.

    In your plugin you can just retrieve the tids if you need them from the posts array like so

    function (data, callback) { var tids = data.posts.map(function(post){ return post.tid; }); ... }
  • This topic is deleted!

    Locked
    1
    0 Votes
    1 Posts
    5 Views
  • What are these GETs doing?

    5
    0 Votes
    5 Posts
    2k Views
    Z

    Yes, the polling 200 status indicates nothing is wrong. Everything you're seeing is completely normal of nodes Socket.IO.

    Furthermore, polls are done on port 80 http, so it would never be blocked. Webscoket traffic in general is done ona range of ports, none of which ISP's filter (I've worked for an ISP). The only port I know that SOME NorthAmerican ISP's block is SMPT incoming and even that is rare.

  • 1 Votes
    5 Posts
    2k Views
    J

    @trevor @esiao Yes, I need that for user's profile page, but tnx anyway 🙂 The thing is that I don't know how to make plugins, because I am focused on design for now. Is anyone else interested to help with this? @psychobunny @julian or any other developer?

  • 0 Votes
    1 Posts
    2k Views
    E

    How to add more widget locations on home.tpl?

    I want add widget at the footer / header of home.tpl

    Not global footer.

  • Masonry.js on category page

    3
    2 Votes
    3 Posts
    2k Views
    J

    @esiao That didn't worked, it looks like it doesn't even loads masonry.js for some reason. How can I see is the scirpt loaded and is it loaded correctly? Maybe some cmd command? I followed all instructions in setting up plugin.json and theme.json and I am pretty sure that I did it right. I can't figure out what can be the problem. Any other suggestions?
    Tnx anyway ^^

  • 0 Votes
    4 Posts
    2k Views
    A

    @Jelena You're welcome, didn't look in the plugin file. 🙂 glad you've got it working,

  • Gotchas for v0.5.0

    18
    2 Votes
    18 Posts
    5k Views
    barisB

    Related issue: https://github.com/NodeBB/NodeBB/issues/1978

    This is another breaking change. It effects anyone using the hook filter:user.custom_fields and filter:register.build to add custom data to users on registration.

    If you were using filter:user.custom_fields to add new entries into the user object you can just switch the hook you are using to filter:user.create. No need to change anything else.

    If you are using filter:register.build to add new entries into the registration form and want these entries to get added into the user object you need to use the hook filter:user.custom_fields. In your plugin that adds new entries into the registration form just add a listener for filter:user.custom_fields and add the fields that you added to the form into the array passed in, here is a sample.

    // plugin.json { ... "hooks": [ { "hook": "filter:user.custom_fields", "method": "addCustomFields"} ], ... } //plugin code function addCustomFields(fields, callback) { fields.push('newCustomField1'); // must match the input name you added to regForm fields.push('otherCustomField1'); callback(null, fields); }

    After this when a new user registers they will have newCustomField1 and otherCustomField1 entries in their user object.

    @bentael nothing needs to be done for spam-be-gone since we don't want the captcha form entries in the database anyways.

    Before this change it was possible to add any field into the registration form client side and it was inserted into the database. Now only the fields that core and plugins specify are inserted.

  • 0 Votes
    3 Posts
    2k Views
    C

    @esiao it works,Thank you very much!

  • Fetching recent topics from same category?

    10
    0 Votes
    10 Posts
    5k Views
    T

    Well, no that doesn't work either as it just shows '{category_id}' in the console with no ID #. Rather interesting.

  • width changing

    1
    0 Votes
    1 Posts
    1k Views
    gaasgG

    I'm trying to figure out how to do this.. I use the lavender theme, I want to have the full screen width when a user is on the front page, but when he goes into a category/topic to have it decrease..

    Anyone got any tips on this ?

  • NodeBB/nodebb-english has .py file in it.

    3
    0 Votes
    3 Posts
    2k Views
    R

    Thanks for the info, I will have to checkout readthedocs.org when I have some free time. I am glad that the docs are getting translated, that is great for the future of NodeBB.

  • 0 Votes
    9 Posts
    3k Views
    A

    @julian I'd do it, but I'd need reimbursing for the deep clean both me and my laptop would need after. 😆