Ask HN: Is there a non-MVC Node.js framework?
I'm looking for a plugin-based node.js framework, as opposed to the MVC (or MV*, etc.) which is all the rage these days. I discuss my reasoning in a short blog post, but I'm hoping the HN community has some insight. And, if I can't find an appropriate one, I'm considering starting one.
Your help/wisdom is greatly appreciated!
Blog post discussing the question is here: http://cscrunch.com/blog/corey-pennycuff/open-question-there-non-mvc-nodejs-framework
5 comments
[ 2.9 ms ] story [ 28.1 ms ] threadThere's nothing about Express that enforces MVC and depending on your definition of 'highly functional' you can go from nothing to production in like 100 LOC with Express and npm.
Are you familiar at all with npm? There's a package or ten for everything.
I've used Express, and it's great for what it does, it just doesn't do what I'm looking for. I'm wanting a framework that can be a CMS as well as a store, or a brochure-ware site, or a game backend server, or whatever else.
Basically, a plugin-able framework. I don't want to use a package from npm if that means having to hack it just to add something to a form. For that matter, I don't want to worry about the security of a 3rd party module simply because there is no standard way to generate/handle forms.
It's a philosophical argument, I suppose. You can write secure code if you do everything right, but if a framework requires you to use an API everywhere (a la Drupal's FAPI), then you get security for free.
I've written my own login and session handling scripts. I've written my own CRUD routines. It's painful, because it should not be necessary (IMO).
there are so many middleware modules for express that you can have a web app with a connected db, user auth, forms with csrf up in a matter of minutes.
You are comparing a Tesla model S to a kit car chassis.
There is also no antipathy between plugin-based/modular systems and MVC. The reason node mostly has barebones frameworks and no content management platform like Drupal is because it is so new.