We all know nodebb is good, also would like to learn about why your choose nodebb over discourse. Thank you.
-
NodeBB caters to long-form discussions with things like pagination and the Lavender theme.
-
-
Here's my take. Discourse requires a docker container to run, plus ruby etc to get it working. Anything outside of this (if you even manage to get it to run) is not supported by the discourse team and therefore, if your install breaks, you are on your own.
For me, this is an absolute non starter as it's far too restrictive for my use case.
NodeBB works perfectly out of the box and is extremely well supported by the developers themselves, and a very strong community. NodeBB was also the first forum software to have full GDPR compliance, and is extremely fast with great SEO support (compare it to Flarum and it's so called "support" for SEO and you'll see what I mean. They are two completely different animals with NodeBB offering full support as part of it's core whilst flarum requires an extension).
NodeBB is fully extendable, allowing for a variety of arbitrary code to be executed after the core has loaded meaning you can make it your own without many restrictions.
Finally, NodeBB is way faster than discourse and flarum (in particular the latter which uses a mithril front end with a php backend and if you want to make one simple change, it needs an extension).
Don't just take my word for it. Just use NodeBB for an hour and you won't be looking at anything else.
-
- Easy to install and get it running.
- Looks like the classic forum experience (Coming from when MyBB, vbulletin, IPB reign supreme) but cleaner.
- Easy to turn it into an app, I just run PWABuilder on the site and published it on Google Play Store - Microsoft Store. I don't know how Discourse would look on an android app. NodeBB looks decent, but I'd like to tweak more on the CSS.
- Can also turn it onto an executable application, published mine as a tool/software on itch, I wonder if I could use the same build and publish it on Steam as a software, but I have no funds for Steam Direct fee.
What else to ask. Maybe
ActivityPub
for the future. Still don't know exactly how it works, I'm rather new but they said about how people inFediverse
can connect to each other regardless of the software as long as it implements the protocol. -
@phenomlab SEO seems super important to me. Good to know. Since your responses with insight. May I ask what we need to be aware after we choose NodeBB, like something you wish NodeBB has, something NodeBB can be improved on to make a better NodeBB.
Assume that we agree Nodejs/JavaScript have better performance than Php. At the same time that I heard that "Nodejs/JavaScript scalability is less than Php" which should be BS? (according to blog from google search, which claims nodejs has better scalability and performance).But just personal experience, I can install php ecommerce on tiny vps without any issue, but not the same with nodejs ecommerce. (has installed Nodebb on Pi without any issue), so Nodejs requires more resource to run?
-
@jsmith my NodeBB wishlist would typically be the ability (as @dave1904 has mentioned) to be notified on reactions, plus I have a possibly unique requirement to be able to enter data directly into the database via an html driven table, which I can do easily with WordPress and a plugin for example, but haven't fully explored how this could work in NodeJS for example.
My SEO experience with NodeBB has been extremely positive. I've not had to make any adjustments like I had to with Flarum for example (which was a complete joke and failure at the same time) and I'm receiving congratulatory messages each month from Google because the amount of clicks on my site is increasing. Sure, this is mostly to do with content and that didn't happen overnight, but for the most part, NodeBB is fully SEO compliant aside from petty stuff like H2 headers etc. Once you go down the SEO rabbit hole, it's hard to find your way out and you'll spend much more time (too much in fact) looking for the holy grail which isn't attainable - much like the perfect site score in terms of performance.
The days of PHP are numbered in my view, and despite it being the ever popular driver behind WordPress, it cannot complete on any level with nodeJS in terms of speed because it has to compile at each load whereas nodeJS does this in advance with webpack. Once all libraries are loaded, your site will run like a rocket.
Sure, there are hardware requirements - as there are with everything. The appeal with php is that it works particularly well in shared hosting and seeing as most of the world chooses to run wordpress as their choice of site mostly for familiarity reasons and the huge array of plugins, this is the somewhat defacto (and farcical actually if you consider the speed comments I made earlier) standard across the board.
As WordPress has huge appeal, shared hosting can be provided cheaply - but at a significant cost to performance once that site outgrows the hardware it sits on. With nodeJS, you need more overall control and therefore are much better positioned with a VPS where you have root access. However, the droplet that runs this site isn't exactly ASCII White or Deep Blue, and the NodeBB application is extremely well written to get the best out of even the cheapest VPS on the market - for example, $5 offerings are actually more than enough for a small community.
Do I wish there was more I could do with NodeBB? Sure - but thanks to it's extensible approach, I am able to write code (I'm a developer also) to further enhance the experience for my users without impacting the core product.
nodeJS in itself is a learning curve, but not hard to master.
-
-
-
@phenomlab This is a very well made post. My first time getting exposed to internet forum was around 2008 ish. There was just, LAMP stack that's it. PHP webhosting proliferated everywhere and the popular forum option that time was like phpBB, myBB, vBulletin, IPB. Then Xenforo getting traction. You can host it anywhere, there are free hosting everywhere.
For now I don't see much place where you can host NodeJS app, without requiring credit cards. With Heroku removing their free dyno plan, Railway.App now also requires $5 to get you out of trial account. Cyclic.sh is now my choice if I want to spin my NodeJS application without costing a penny (If you are interested you can use my referral for $10 credits or something).
But sadly it can't host NodeBB because of SocketIO is unsupported. So I'm stuck with Digitalocean for now.
-
@cat have a look at webdock.io. They have a free 24 hour trial for you to test their services, and this could be a good way to at least experiment with a server before you decide to purchase.
There aren't many "free" services these days, but there are "freemium" providers such as the above.
PS - my internet journey began much earlier - see
-
For me it also was the more traditional organizational structure, as compared to more tag-focused design of Discourse and Flarum. I needed top-level categories, and while Discorse technically allows for this, the categories view there never looked right to me (actually I never liked how Discourse was designed, it somehow manages to feel too minimalistic and too cluttered at the same time for me)
And it got bonus points for not requiring Docker - it is nice, but if I need I can dockerize myself, not having the option to run "bare metal" officically supported is more annoying IMO. And despite only supporting Docker officially, Discourse doesn't even provide official Docker Compose files instead opting for their own pups yaml-based linux-only environment bootstrapper and bash installation scripts, somehow ending up with less (official) portability than NodeBB.
Heck, because it's all in single container you don't even have access to the database from host if you followed their instructions and even need to
sudo -u postgres
inside because the default user doesn't can't runpsql
...The way Discourse is installed feels like they somehow took the worst parts of containers and classical installation scripts and combined them (actually the more I read about it the worse it seems somehow).
EDIT: more cursed Discourse docker knowledge - their (compressed, since that's easier to check and I'd assume compression ratios are similar) slim image is actually larger than NodeBB docker image + alpine postgres docker image. And if the alpine PR comes through, NodeBB+MongoDB too (and then it'd be by almost 50%).
Probably because Discourse, aside from bundling postgres, redis and nginx, also needs to have there three language runtimes/compilers (Ruby, Node.js and Rust for some reason edit2: that reason appears to be compiling oxipng which doesn't provide prebuilt arm64 binaries. They're not using a separate build stage or anything, they just added ~100MB of another language compiler and tooling just to compile a single library)But besides installation, NodeBB is also using technologies I primarily used at the time I started with it (JS and MongoDB - I simply have more experience with these than Ruby/PHP and Postgres), which made it easier to get into extending and modifying NodeBB (and it appears I did the latter more than 50 times now based on my PRs )
-
@cat said in We all know nodebb is good, also would like to learn about why your choose nodebb over discourse. Thank you.:
For now I don't see much place where you can host NodeJS app, without requiring credit cards. With Heroku removing their free dyno plan, Railway.App now also requires $5 to get you out of trial account. Cyclic.sh is now my choice if I want to spin my NodeJS application without costing a penny (If you are interested you can use my referral for $10 credits or something).
Oracle (of all companies) has a very generous always free tier, including 4 ARM cores with 24 GB of memory and 2 small x86 VMs with 1/8th (shared, burstable to a full core) of a hypethreaded x86 core with 1GB of memory each, for a total of up to 4VMs (limited by 200GB of free storage, since the minimum size is 50GB). So you can run 4 1-core 6GB RAM ARM VMs or a single 4-core 24GB ARM and 2 x86 VMs.
You just need to keep them from being deemed idle and reclaimed (which happens when there's less than 15% 95th percentile CPU, network or memory utilization for a week).Also, the ARM machines have a 1Gbps link per core and 10TB/month free egress (ingress is unlimited, as is tradition for cloud). And they centralize almost all networking costs in the bandwidth - so (with some count limitations for always-free accounts), cloud networks, NAT, ssh bastion hosts, site-to-site VPN and even L4 load balancing (not L7 though) is included
Other than that? No real usage limits and they even don't do the marketing calls anymore (yes, they actually used to call people who signed up to the free tier, at least in my region... But this was when it was much less enticing, so probably much less popular).
It requires adding a card for verification, but they have the best always free tier system out of the major cloud providers since they require explicit action to switch account from always-free (with strict service limits, so you just can't launch anything that isn't free) to pay-as-you-go (that keeps the always-free services but allows you to launch stuff beyond the free limit).https://www.oracle.com/cloud/free/
edit: also note that their Ubuntu images have some networking quirks (tl;dr is that they set them up with iptables that work for firewalld but break with ufw. There are a lot of resources online for resolving this issue though)
-
@oplik0 said in We all know nodebb is good, also would like to learn about why your choose nodebb over discourse. Thank you.:
It requires adding a card for verification
In the US, privacy dot com solves this problem with virtual cards...
-
@cat said in We all know nodebb is good, also would like to learn about why your choose nodebb over discourse. Thank you.:
Easy to turn it into an app, I just run PWABuilder on the site and published it on Google Play Store.
Wow, have to check this out. Is there a guide for it?
-
@dave1904 There isn't specific guide, but it is simple. You just enter the URL of your NodeBB installation, then enter it on PWABuilder. The builder will then give you checklists to follow. And when you're satisfied you can download the files (aab, apk, etc) that you can upload to the store.
-