DEV Community

Md Abu Taher
Md Abu Taher

Posted on • Updated on

NodeJS Frustration

Node.JS is cool and being with it for quite a bit of time, I am attached to it. Even so, I am really frustrated about the lack of cms that can overthrow wordpress, joomla, or maybe e-commerce solutions like Magento or even woocommerce.

Surely I tried ReactionCommerce, TotalJS and at least 20 other solutions and none of them are even close enough.

  • Just wasted hours on the gatsby and strapi tutorial, only to find it's not working anymore due to some changes in some small library somewhere.
  • Just wasted hours on some reactioncommerce swag tutorial only to get cannot find module and I don't actually care and I won't run errors.
  • Just wasted hours on react-virtualized where I cannot run it properly with sementic-ui because of some className prop on the react-virtualized package.
  • Just a simple npm install on meteor alike projects takes millions of years and hundreds of error logs. In the end you get a non working app, hours wasted, frustration and a gigabyte big node_modules folder.
  • User role management sucks. No proper guideline anywhere about how to properly manage the user roles and such.
  • Theme management sucks. Once you create a theme, you are done with it, no changing it.
  • In the end, everyone ends up frustrated, some pushes some PR to certain repo hoping to change, but ends up getting no response for 5 years because the previous frustrated guy doesn't care about it anymore. The others creates their own version from scratch and ends up same.

I like nodeJS, I like javascript. There is no denying it. I liked it for past 6-7 years and I want to like it more and do not want to change just because it's making me frustrated.

The only solution for all above always tells me to build a cms from scratch, but that will end up another abandoned project soon because it will make me even more frustrated.

PHP is bad, JS is bad, only (put language name here) is good, and that's okay. So, do you think it will take another 10 years for nodejs to be where php (...consider wordpress/magento etc) is right now?

Top comments (20)

Collapse
 
rhymes profile image
rhymes

It's an issue of ecosystem, business and frankly resilience. I believe you (as in anybody) can write a valid CMS with Node.js but why?

Wordpress has been around for 14 years. In addition of being open source it has a well funded company behind it. They also have built a massive ecosystem on top of it. Also consider that a CMS is theoretically not a product for programmers but for people who write content.

So if you start from scratch you cannot only scratch your own itch but, at least if you don't want to abandon it, you also need to solve a problem for the customer :D.

A lot of people like to say "I hate Wordpress" but for a huge amount of customers it is good enough and has tons of plugins.

I wonder how many thousands (probably millions?) of man hours are behind Wordpress.org

There are alternatives to WP though: some other companies have hosted CMS services you can use and in the latest years headless CMS are all the rage.

I'm not saying you shouldn't write one from scratch, a CMS requires a lot of work: the page model, graph relations between the objects, plugins, theming, shipping, etc. etc.

Maybe you can use a headless CMS and build your node app on top of that?

Collapse
 
entrptaher profile image
Md Abu Taher

Well that's why I tried strapi, netlify and several other headless cms. The thing is, everyone starts from scratch and build something for their specific needs and there is no good solution up until now. I do not want to re-invent the wheel again though it seems it will be a good practice for me. Even right now I was fiddling with strapi trying to see what can I do without recreating everything on my own.

Also, just like others, someday I will stop talking about it too (probably soon) when my need is fulfilled or I am distracted with something else, something more shiny. I feel it will take another decade for nodeJS to mature enough where people will tell it's old and will look for something else.

Collapse
 
rhymes profile image
rhymes

What are you trying to accomplish? I wouldn't consider strapi or netlify headless CMS.

Check these out: cmswire.com/web-cms/13-headless-cm...

Thread Thread
 
entrptaher profile image
Md Abu Taher

Well they say it's headless cms ;)

headlesscms.org

Thread Thread
 
rhymes profile image
rhymes • Edited

Ok cool, but what are you trying to accomplish? Maybe if we clear that up we could find the right tool

Thread Thread
 
entrptaher profile image
Md Abu Taher

A cms solution with proper frontend and backend (think wordpress or woocommerce), one that doesn't suck and doesn't throw hundreds of errors.

The closest one I found for that is netlify and strapi right now. Yet I got many errors just trying to run them properly.

Thread Thread
 
rhymes profile image
rhymes

So why can't you use Wordpress?

Sorry but I don't understand if you are trying to integrate a CMS in a node app which makes sense, or just trying to install a CMS on a server and you need it to be in Node.js for some reason which is the part i'm not understanding.

:D

Thread Thread
 
entrptaher profile image
Md Abu Taher

Me using wordpress isn't the solution to my frustration. It won't solve the bad experience with reactioncommerce or react-virtualized. I was a PHP developer and still am.

I am just frustrated about the js community, experience and future. That's all.

Thread Thread
 
hugo__df profile image
Hugo Di Francesco

Try keystoneJS, it doesn't have themes but the admin side is pretty solid.
Not sure why you're looking at headless CMSes if you want frontend and admin/dashboard.
Ghost is pretty good as a blogging platform and has theming support.

Thread Thread
 
hugo__df profile image
Hugo Di Francesco

Try keystoneJS, it doesn't have themes but the admin side is pretty solid.
Not sure why you're looking at headless CMSes if you want frontend and admin/dashboard.
Ghost is pretty good as a blogging platform and has theming support.

Thread Thread
 
entrptaher profile image
Md Abu Taher

Thanks for suggestion. I tried keystoneJS too along with 20+ other cms solutions. Still these cannot impress me.

And all these conversation is about cms part only. There is the virtual dom, node_module folder, crypto mining, fatigue and other dark talks left to talk :D .

Waiting to see how the javascript community evolves and where it takes us.

Thread Thread
 
darryljmorley profile image
Darryl • Edited

I think Strapi is great if your looking for an open source solution and maybe the best I've come across after testing many. It isn't without it's issues though. Saying that it appears to be well supported by the people building it so the future looks bright.

Collapse
 
bastianhilton profile image
Sebastian hilton

I think what you are speaking of is a javascript solution that could match what is offer in php and if so im totally with you. at the moment nothing comes close to php offerings in the javascript world. at least not without alot of custom work which is what most of these languages love outside of php.

Collapse
 
shettayyy profile image
Rahul Shetty

I second. There hasn't been any CMS developed with JS which can be compared with WordPress. But, you are missing a point that WordPress has been there for a while. WordPress has a huge community to support and it's being actively maintained. Strapi or KeyStone is yet to mature.

Keystone CMS development seems to have slowed down. Strapi is good if one can build the frontend. I hope in the near future, there would be a CMS solution built using JS that might satisfy your needs.

Collapse
 
tharkis profile image
Tharkis

I totally understand. I am in a situation where I want a backend, but can't seem to find anything that fits the bill. Strapi was the closest thing I found, however it is constantly changing and breaking since it is alpha. Formio was a close second, but it is really not built for what I am trying to do (or you I think). The fact that no documentation ever seems to work, really frustrates me. I don't know how many times I've tossed something aside just because documentation isn't correct.

A product might be amazing. If the documentation is out of date, incorrect or non-existent and the product is not self explanatory to a 5 year old, your product is broken. This is doubly so for frameworks and other development tools.

Collapse
 
luispa profile image
LuisPa

I feel so identified with this. But I think your frustration is with Nodejs CMS, not Nodejs at it self.

The open source community it’s making a great work on cms, with a lot of pain yet but exists a progress. Maybe you can help to a open source project focused on painless cms ln Nodejs.

Collapse
 
entrptaher profile image
Md Abu Taher

I will help some project because it will help everyone in end. Currently looking for one with most potential.

Collapse
 
okolbay profile image
andrew

nodejs killer feature is an event loop,non-blocking IO, async calls, etc. good for reactive systems. useless for CMS. node is just a wrong tool for one, I guess

Collapse
 
entrptaher profile image
Md Abu Taher

Is it wrong to expect a shopping app from event driven nodejs?

Check the below website,

This is a fast ecommerce website, built using expressjs. And, so far, it was made from scratch using custom solutions.

It's just that people did not make any good open source cms that can be said, "Oh, you don't like Magento? Well, you are free to try X which is based on nodejs".

So, it's not the wrong tool but the community needs more solutions made for consumers _^ .

Collapse
 
andycharles6 profile image
andycharles6

Use AdonisJS preview.adonisjs.com/ and look no further :)