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
  • If you use Atom, and miss resizable panes...

    7
    1 Votes
    7 Posts
    3k Views
    B

    emacs doesn't have paywall either 😎

  • 0 Votes
    12 Posts
    19k Views
    nhl.plN

    Yes, you'll need it in your config file. Just replace redis with mongo phrase or use setup to generate config.json.

  • What is meaning of misconfigured csrf?

    1
    0 Votes
    1 Posts
    2k Views
    S

    I am using nodebb-plugin-write-api plugin for rest api. Then i use request module to post topic in nodebb but i get error misconfigured csrf. What it mean please help me?

  • 0 Votes
    4 Posts
    2k Views
    S

    I restarted nginx, and do so whenever I try to make changes, but it's not working... Is something like this valid? I made sure the file in sites-available and sites-enabled are linked.

    upstream io_nodes { ip_hash; server 127.0.0.1:4567; } server { listen 80; server_name forums.violetcomics.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_redirect off; # Socket.io Support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; gzip on; gzip_min_length 1000; gzip_proxied off; gzip_types text/plain application/xml application/x-javascript text/css application/json; location @nodebb { proxy_pass http://io_nodes; } location ~ ^/(images|language|sounds|templates|uploads|vendor|src\/modules|nodebb\.min\.js|stylesheet\.css|admin\.css) { root /path/to/nodebb/public/; try_files $uri $uri/ @nodebb; } location / { proxy_pass http://io_nodes; } }

    Edit: Error came back. @_@ I'll get back to it later.

  • 1 Votes
    11 Posts
    8k Views
    BaerrusB

    @frissdiegurke Knowing what I know now, @julian post can be construed to contain all the information :). I would word it differently though as SSO is probably veyr widely used. And if so, then calling port optional is...well, still technically correct.

  • Mongo: error from setup script

    7
    0 Votes
    7 Posts
    2k Views
    julianJ

    v0.6.x should be stable on Mongo again.

  • Cross login

    16
    0 Votes
    16 Posts
    7k Views
    manuelM

    @Paolo there are oauth2 provider written in php and many other languages. have you find any solution for your problem?

  • Problem with widget

    10
    0 Votes
    10 Posts
    3k Views
    A

    I backup and reinstall nodebb v0.6 instead of 0.7 and the problem is solverd.
    Thanks for your time

  • This topic is deleted!

    Locked
    1
    0 Votes
    1 Posts
    5 Views
  • 0 Votes
    6 Posts
    3k Views
    julianJ

    Hey, get ready to be confused @frissdiegurke -- there's a third type of hook, rounding out the behaviours 😆

    action hooks are, as @Mega describes, fired when something happens, and NodeBB doesn't care about the response. filters are fired when plugins might change things. The majority of hooks in NodeBB are filters. static hooks are fired when you need NodeBB to wait until your plugin is complete in order to do something. There is only one static hook available right now: static:app.load, which is fired on startup.

    In this case, since the post is already slated to be deleted, but you want to do something before it is deleted... we may want to consider adding a new hook called static:post.purge.

  • 0 Votes
    5 Posts
    2k Views
    T

    @pitaj said:

    you could just add some JavaScript to parse it client side.

    That is more than likely what I'll have to do for now until this can passed globally. Thanks @pitaj

  • 0 Votes
    9 Posts
    4k Views
    L

    @julian said:

    I'm unfamiliar with C#, and we don't handle socket establishing on our end, we just let the socket.io library handle it.

    Perhaps you can get a better idea by investigating the source code of this project? http://socketio4net.codeplex.com/

    Hi Julian,
    I am using that only. Can you provide some help on how can I connect using Chrome Web socket plugin, I mean what URL to use? That might clarify my query.

    My objective of using C# is that I want to see whether I can get notifications from outside without logging into my local NodeBB application.

    Thanks!

  • Adding New Topic to Recent page.

    10
    1 Votes
    10 Posts
    5k Views
    AlexA

    I imagined something like that for filtering by categories. The active tab would be bigger than the others.

    recent-posts-tabs.jpg

  • Problem editing files

    3
    0 Votes
    3 Posts
    2k Views
    N

    Hello, it worked thanks a lot.

    And for the launching is that normal i can't write ./nodebb start or npm start ? => Screenshot.

    Second question, is there a pluggin to underline the text , change the alignment , etc ? I tried this one: https://community.nodebb.org/topic/2298/nodebb-plugin-buttons-galore-nodebb-buttons-galore
    but for example, underlining doesn't work, it appears like that: ~test~ or ->test-> or =>test<=

    Thanks a lot.

  • Latest users widget

    3
    1 Votes
    3 Posts
    2k Views
    barisB

    @julian :rage2:

  • 0 Votes
    17 Posts
    5k Views
    P

    @baris works now, thanks.

  • 2 Votes
    11 Posts
    3k Views
    julianJ

    can't wait to see that! 🙂

  • app.template

    3
    1 Votes
    3 Posts
    3k Views
    barisB

    The above code looks incorrect due to a bug in templates.js

    Take a look here

    Link Preview Image nodebb-theme-lavender/templates/header.tpl at master · NodeBB/nodebb-theme-lavender

    A simple theme for NodeBB. Check out the theming guide that accompanies this work - nodebb-theme-lavender/templates/header.tpl at master · NodeBB/nodebb-theme-lavender

    favicon

    GitHub (github.com)

    You header.tpl should have that block in the <head> tag.

    What problem are you having exactly?

  • Implement 'COMMENTS' feature in NodeBB

    2
    4 Votes
    2 Posts
    1k Views
    A

    Hi,
    As we know, in NodeBB there is concept like "One Topic" has multiple "Reply" (Posts).
    I wanted to implement functionality which provides facility for the user to make
    "Comments" on each reply. So the hierarchy will be :
    --> Topic
    --> Reply
    --> Comment 1
    --> Comment 2
    Most important is I wanted to do this using PLUGIN approach.

    So Is there any similar plug-in available which can help me?
    If I want to implement this then how should I start this? Any guidelines.

    Thanks!!

  • 0 Votes
    1 Posts
    1k Views
    A

    Hi,
    Have NodeBB used "optimistic concurrency locking"?
    I think in NodeBB there is 'UPVOTE' concept,
    While upvoting there has to be 'Optimistic concurrency locking',
    So it can handle multiple database insert operation at a time while upvoting single post by multiple users.

    Please let me know where do I find the code for 'Optimistic Concurrency locking',
    and guide me how to handle multiple insert operation at a time in redis database.

    Thanks!!