Skip to content

NodeBB Development

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

2.7k Topics 17.3k 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 😉

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

    11dad6df-40c2-48ce-8aa2-cf26919c7ab3-image.png

    I successfully installed NodeBB using docker-compose.

    Everything seems to be working as expected, but when the nodebb container starts up, NodeBB starts running. However, when I connect to bash and check its status using the CLI, it shows that NodeBB is not running, even though it actually is.

    When I try to stop it, I can't. And when I try to start it using the CLI, even though I initially installed it with MongoDB, it gives an error related to postgres.

    Note:
    Initially I've installed NodeBB with Postgres, then I removed the container and installed with Mongo.

    1c23091b-3ef0-46ac-96b5-6145ef19e65c-image.png

  • Focused discussion related to ActivityPub integration in NodeBB

    52 Topics
    640 Posts
    nutomic@socialhub.activitypub.rocksN
    Thats how FEP-1b12 works, its necessary if you want to federate activities such as voting, deletions or mod actions and not only post creations. But Lemmy doesnt support arbitrarily wrapped activities, only specific hardcoded ones like Announce/Create/Note, Announce/Like or Announce/Delete.
  • Help Translate NodeBB
  • Template get parent category

    Moved
    1
    0 Votes
    1 Posts
    239 Views
    dogsD

    Hey!

    How do I get the parent of the actual category in a Tamplate?

    Im just looking around and found this:

    <!-- IF breadcrumbs.length --> <ol class="breadcrumb"> <!-- BEGIN breadcrumbs --> <li<!-- IF @last --> component="breadcrumb/current"<!-- ENDIF @last --> itemscope="itemscope" itemtype="http://data-vocabulary.org/Breadcrumb" <!-- IF @last -->class="active"<!-- ENDIF @last -->> <!-- IF !@last --><a href="{breadcrumbs.url}" itemprop="url"><!-- ENDIF !@last --> <span itemprop="title"> {breadcrumbs.text} <!-- IF @last --> <!-- IF !feeds:disableRSS --> <!-- IF rssFeedUrl --><a target="_blank" href="{rssFeedUrl}"><i class="fa fa-rss-square"></i></a><!-- ENDIF rssFeedUrl --><!-- ENDIF !feeds:disableRSS --> <!-- ENDIF @last --> </span> <!-- IF !@last --></a><!-- ENDIF !@last --> </li> <!-- END breadcrumbs --> </ol> <!-- ENDIF breadcrumbs.length -->

    How can I get the parent category-Name of the current (sub)category?
    Is there any reference I can use for such things in the future?

    What I like to do:

    Get the parent of the actual category use this value e.g. "foobar" to call the API of an external software and get JSON-Object depend on value "foobar" convert the data to display it between breadcrumbs / new topic in the nodeBB Forum

    Is it the right way to handle this with a template or am I completely wrong?
    I just installed nodeBB and I also do have no idea about node.js and all that stuff so sorry I am a noob. 🐵

    Kind regards, Pascal.

  • 0 Votes
    1 Posts
    641 Views
    a632079A

    托管于语雀:https://yuque.com/a632079/nodebb
    文档覆盖了 NodeBB 英文文档提及的所有内容,并补充了一些内容。
    主要内容:

    安装 使用 高级 开发

    This is a chinese document of nodebb, created by me, who is a transifex reviewer.

  • This topic is deleted!

    Moved
    1
    0 Votes
    1 Posts
    113 Views
  • How to customize the Theme's design?

    Moved
    3
    0 Votes
    3 Posts
    510 Views
    A

    @oplik0 said in How to customize the Theme's design?:
    Thank you for your reply.
    I want to know where to write the code for design and I don't need follow components.
    Capture.PNG
    Instead of this, I need to add the following screen.
    Capture2.PNG
    You can check this image on http://planetstyles.net/demo/milk/3.3/1/viewtopic.php?f=5&t=25&sid=834ed09ad81c0c19778c16063ed453df
    Please teach me.
    Thank you again.

  • How to create the New Theme from design.

    Moved
    1
    0 Votes
    1 Posts
    239 Views
    A

    Hello, everyone.
    I am new here, but I am very interesting in NodeBB.
    I want to create the new theme but I don't know how to create it.
    Please teach me step by step.
    Thank you for your time.
    Apex

  • Need some dummy data... or faux data generator

    3
    0 Votes
    3 Posts
    402 Views
    T

    @youhosi Thanks for the reminder!

  • 0 Votes
    1 Posts
    209 Views
    omegaO

    I've borked something in the custom CSS - lists of topics, popular, recent etc. etc. are NOT using the full width available - say 75-80% of the width available is being used - I have unused space to the right size of the recent post preview. - it's lie there is a blank column.

    The primary nav menu fixed at the top is fine, this is what I am comparing it to.

    Any idea what is the controlling element here in the CSS?

    Could a conflict somewhere too but I'll look at this later... when I turn off the custom CSS to see if it reverts.

  • Storing plugin versions in the database

    7
    0 Votes
    7 Posts
    875 Views
    G

    @PitaJ Thanks! upgrade --package is exactly what I was looking for.

  • NodeBB Blog

    Moved
    6
    4 Votes
    6 Posts
    3k Views
    C

    @psychobunny Which Ghost theme does the NodeBB blog use? I really liked it. A customized version of the Casper theme? Obviously I would like to have this theme: D

  • Nodebb Docker Alpine Images

    4
    1 Votes
    4 Posts
    567 Views
    damianD

    @mat-m is spot on, though my perspective is definitely production, not test. Running the leanest container possible has the added benefit of reducing the attack vectors as there is simply less surface for somebody to target. Alpine is specifically designed to be as lightweight as possible and as stripped down as possible.

    Do we know who owns the image build process and can s/he weigh in on this?

  • This topic is deleted!

    0
    0 Votes
    0 Posts
    12 Views
    No one has replied
  • 1.13.0 Breaking Changes

    5
    6 Votes
    5 Posts
    1k Views
    D

    Apparently the Calendar Plugin:

    nodebb-plugin-calendar
    Calendar and events for NodeBB

    Installed 1.0.0-alpha.50 | Latest 1.0.0-alpha.50

    Does not work with 1.13.0

    Can someone please update it?

  • 3 Votes
    23 Posts
    14k Views
    zaasmiZ

    @baris Please help
    nothing happened after save changes again at same screen.

    3e9f330e-3679-4261-a0ff-e37362fb5134-image.png

  • add gif emoticons

    9
    0 Votes
    9 Posts
    906 Views
    NoduleJSN

    @TaLoche

    It works. You helped me so much thanks! 👍 👏

  • Posted body empty

    3
    0 Votes
    3 Posts
    315 Views
    magnusvhendinM

    When I remove enctype="multipart/form-data" from the form in registerComplete.tpl it works. So this has to do with encryption and maybe that I don't have HTTPS on my local machine. So then my question is, why is this not on the form that transmits the username and password?

  • nodebb Watchdog

    4
    0 Votes
    4 Posts
    442 Views
    BriB

    @scottalanmiller has done some great scaling of this platform, he may have some pointers

  • How i can add Multiple Category sections?

    Solved
    1
    0 Votes
    1 Posts
    1k Views
    FunkelF

    Hello 😄

    Im a newbie with css so i found this code in the NodeBB Forum

    ul.categories [data-cid="1"]::before { content: "Neuigkeiten"; background: #1e1f33 url(https://i.imgur.com/liB8eUb.png) no-repeat 10px center; } ul.categories [data-cid="3"]::before { content: "Blocks"; background: #1e1f33 url(https://i.imgur.com/eSUaQuV.png) no-repeat 10px center; } ul.categories [data-cid="1"]::before, ul.categories [data-cid="3"]::before { color: #fff; display: block; position: relative; height: 40px; line-height: 40px; font-size: 15px; border-bottom: 1px #0c2b51 solid; text-align: left; padding-left: 70px; font-style: normal; text-transform: uppercase; margin-bottom: 20px; font-family: "Roboto","Helvetica Neue",Helvetica,Arial,sans-serif; border-radius: 5px; margin-left: 10px; }

    I am also shown a category above as you can see here

    alt text

    But my question now is how do I get more category sections? In CSS as I see it there are 2 categories defined or do I see it wrong?

    can you help me?

    MfG Funkel

  • This topic is deleted!

    1
    2 Votes
    1 Posts
    36 Views
  • Custom profile stats filter

    3
    0 Votes
    3 Posts
    431 Views
    NoduleJSN

    @julian
    Thanks. Yes it works fine. Only one problem.

    Seems like

    'action:ajaxify.dataLoaded'

    is not called when i refresh the page. It is called only if browse the forum. I noticed it now because i use this hook to capture user counters and put them into the stats page.
    It wont work also with simple code, outside or inside the document-ready function.

    P.S: i just solved using directly

    ajaxify.data

    global variable. It is just a problem of the hook

  • 1 Votes
    3 Posts
    525 Views
    NoduleJSN

    @baris yeah it's true, but you can use transaction on a multicluster with only one node, also if with a lot of limitations.
    About your command example is a good idea also if it would work only with redis and postgre, with mongodb can be used like a normal batch.

    I took a look to postgreSQL module, seems it support transactions, mongodb emulate the same thing with non ACID batch. I prefer to avoid SQL databases but the way data is organized seem more suitable to a relational DB