Skip to content

NodeBB Development

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

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

    798 Topics
    5k Posts
    crazycellsC

    when the forum is used as PWA, there is no easy way to navigate between pages...

    Yesterday, I was reading a post on the forum that mentioned another topic, I have encountered an issue when attempting to return to the original post. So, after reading the linked topic, I had to go to categories page and retrace my steps to locate the topic I was reading initially...

    Although this can be achieved by page control arrows on destop and mobile browsers, there is no easy way to achieve this on PWA... so I propose adding some page control buttons that appear at the bottom of the page when scrolled up. (maybe it can be integrated to post navigation bar but I believe those buttons should appear in all pages, not only in topics)

    Here is just a suggestion to distinguish them from other arrows...

    IMG_0029 copy.jpeg

    alternatively the arrows or rewind icons that YouTube uses can be used:

    IMG_0030.jpg

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

    @solmak

    Thank you for spending time on this, that was fast!

    he is quite speedy :rofl: @baris is known to create a new plugin in 3 minutes of it being discussed in the forum... lol

    Link Preview Image How? · Issue #2 · NodeBB/nodebb-plugin-best-posts

    How did you make a plugin in 3 minutes?

    favicon

    GitHub (github.com)

  • Focused discussion related to ActivityPub integration in NodeBB

    26 Topics
    230 Posts
    julianJ

    @crazycells labels are to tags as X are to categories?

    It could just be the coloration too... let me just change it to black on white and that may make all the difference.

  • Help Translate NodeBB
  • [Solved] .editorconfig pls

    2
    0 Votes
    2 Posts
    1k Views
    B

    /facepalm added 1 year ago
    https://github.com/NodeBB/NodeBB/commit/ba89285c748e0573b0bfeb5ce4c49b29dcd15b17

  • 1 Votes
    2 Posts
    2k Views
    ShardS

    I'm unsure if I'm seeing a regression or an undocumented? change here.

    I'm currently getting:

    TypeError: undefined is not a function
    at /mnt/Extra/home/dbolack/Projects/nodebb-plugin-rscloudfiles/index.js:203:4

    Which maps to:

    callback(null, { url: rsCloudFilesCDNSecure + '/' + image.name, name: image.name || '' });

    Which is equivalent to the current imgur plugins bit:

    callback(null, { url: data.link.replace('http:', 'https:'), name: image.name || '' });

    Any ideas?

  • Categories on Subdomains.

    10
    2 Votes
    10 Posts
    3k Views
    A

    After some playing about, i've settled on a redirect. If anyone wants to do something similar, create a new file in sites-available called subdomains, then do the usual sudo ln -s /etc/nginx/sites-available/subdomains /etc/nginx/sites-enabled

    Inside the subdomains file, create a server block like thus:

    # Mixes server { listen 80; server_name mixes.35hz.co.uk; rewrite ^ $scheme://35hz.co.uk/tags/mix$request_uri? permanent; }

    If you want the subdomain to ignore the request parameter, then remove $request_uri? portion of the rewrite. This basically means that if someone typed mixes.35hz.co.uk/parameter it would ignore /parameter and still go to the relevant tag page without causing a 404. This may be more beneficial. So I'd recommend leaving that portion out. However this would be useful if you wanted a fast way to navigate to a user profile via something like user.35hz.co.uk/a_5mith. Because you could add the request_uri after /user in the rewrite.

    Just add more server blocks as required for each rewrite. You can stack server_names so that multiple subdomains go to the same link, just add another server_name underneath the existing one.

    server_name mixes.35hz.co.uk; server_name mix.35hz.co.uk;
  • Is socket.uid reliably secure?

    10
    0 Votes
    10 Posts
    2k Views
    S

    @baris said:

    We had no reports of anyone altering socket.uid its a server side only value.

    A while back there was a certain vulnerability (not NodeBB specific), I don't exactly remember what it was, but it allowed a user to mimic another user, even an admin, and do pretty much everything as that user.

    Now you have one report 😉

  • 0 Votes
    11 Posts
    16k Views
    A

    @baris Yep, that's the ticket, cheers buddy. Can be marked as solved.

  • nodebb API support?

    2
    0 Votes
    2 Posts
    2k Views
    S

    @julianlam is already working on this, see this topic.

  • 0 Votes
    5 Posts
    3k Views
    P

    yup. Posting a fix for that when I get a chance:

    Link Preview Image Infinite scroll for anon is potentially broken on mobile · Issue #2319 · NodeBB/NodeBB

    When I scroll to the bottom in a topic, and only on mobile and not logged in, the DOM (#content) disappears. Seems new to me as of yesterday. Anybody able to repro?

    favicon

    GitHub (github.com)

  • Customise og: tags

    1
    0 Votes
    1 Posts
    902 Views
    O

    Hi,

    Is it possible to customise og: tags without editing NodeBB core?

    Thanks

  • 0 Votes
    4 Posts
    3k Views
    barisB

    I don't think we have that documentation right now, couple months ago I started a doc in the github wiki about the db structure but I don't think it got moved over to the docs website.

    Either way the best way to store your plugin data is to prefix the name of your keys with the plugin id so it doesn't conflict with other plugins.

    Also you need to be careful to not break any of the core objects, ie if you delete the key users:joindate you will have problems.

  • 0 Votes
    2 Posts
    1k Views
    A

    @trevor I think they recently implemented that when a user is deleted/banned, that their socket get closed. Or words to that effect. Don't quote me on that though.

  • Help Me ( Installation )

    6
    0 Votes
    6 Posts
    3k Views
    Netto HikariN

    @Master-Antonio I still offer free NodeBB hosting right here: https://community.nodebb.org/topic/2291/offering-a-couple-nodebb-instances-for-free/11

  • script to auto create a topic

    14
    1 Votes
    14 Posts
    5k Views
    esiaoE

    @agarcia17 I'm glad I could help you. And I want to say thanks for the solution I'll probably do something along those lines for my forum too 🙂

  • 7 Votes
    22 Posts
    19k Views
    A

    Here sir, take my vote. 🆙

  • 0 Votes
    4 Posts
    2k Views
    julianJ

    Glad you figured it out with @arasbm's help @trevor, sorry I had to go to bed 😄

  • Markdown hast vanished.

    16
    0 Votes
    16 Posts
    4k Views
    julianJ

    @a_5mith :poutine:

  • I like FontAwesome, but...

    3
    2 Votes
    3 Posts
    1k Views
    julianJ

    I think it may be possible. FontAwesome has LESS support, so we could possibly work that into the vanilla theme so it can be easily removed instead of removing it from the header.tpl

  • 0 Votes
    3 Posts
    2k Views
    T

    Nice, thanks for point me in the right direction!

  • Update Topic slug

    3
    0 Votes
    3 Posts
    2k Views
    B

    ah crap, i totally missed reading this line!

    thanks you @baris

  • Regex Question.

    15
    0 Votes
    15 Posts
    4k Views
    frissdiegurkeF

    I'd like to help you out, but I'd need more specific inputs you'd like to read the ID and the parameters from.

    Currently I can just tell you that sth. like [\w\-_] is no clean regex since it's equivalent to [\w-] and the shorter the better the overview 😄
    Also the [^<a]+ out of the last full regex of @esiao would stop at the first a occurrence, not only at the first <a occurrence as it may suggest.
    So there are a few not-so-well parts within each regex I've seen yet and you didn't consider users who put the v=... parameter after other parameters within the regularUrls. And are you sure that it'll always be like <a href="...">...</a> and in no case the a-tag could get another attribute (My emoji-extended broke at some version because the code-tags got ^^)...

    If you want me to help you out with more clean regex (up to my knowledge) I'd likely help you if I get a few example URLs that cover all cases.
    Also if you'd be willing to learn regex syntax I'd try to explain my results afterwards 😉

    But for now I have to sleep first, good night zzz

  • npm question.

    1
    0 Votes
    1 Posts
    656 Views
    A

    So turns out I've been committing plugins on two seperate accounts, because my brain cells have 410.

    I have 6 packages on one account, and 7 on another. I would like to combine them. As trying to publish my changes is giving me 403 errors. And I can't seem to logout of one npm and log in to the other. I'm all so very confused. 😕