In a nutshell, because database abstraction layers make compromises... 🙂
NoduleJS last edited by NoduleJS
congrats for the audit scores.
First two are from my browser
From last site desktop is better than mobile than from browser.
I did a bit better performance with a simple vuejs forum, but very good performance for a complex forum like this.
from last checks
desktop: First Contentful Paint: 0,5 s
mobile: First Contentful Paint : 1,8 s
From a performance perspective, NodeBB is mind blowing. Everyone coming to our forum is always commenting on how screaming fast it is.
Thanks for the kind words @NoduleJS @scottalanmiller ... We always try to keep NodeBB fast, and a lot of what @baris does day to day is doing the unpopular grunt work that makes NodeBB faster and faster, so if there is someone to applaud I think it would be him!
The fun (/s) part about pagespeed and other similar services is that the goalposts are constantly moving, so it pushes us to make the product better and better as expectations rise.
I will admit many sites just embrace the fact that a js heavy site is going to be a slow one. It does make it easier to stand out when your competitors don't try
It's funny to me that the biggest performance hit to the main page of my NodeBB instance isn't JS, but images There are a lot of categories with image as an icon there with their number increasing with time and I don't think all images are correctly resized and optimized, so I'll have to start doing it automatically...
So yeah, it's an example of how being JS heavy doesn't make a website slow - it's only bad code that makes a website slow