OSS Virt's picture

I wonder if anyone has any opinions on this.

I'm about to start a new research project to experiment with developing simple database applications. I am thinking to use MongoDB with Node.js and Express on the backend, and Webix on the frontend.

I can use this tutorial to setup a simple test and go from there.

My question is about which TKL template to start from. As I have no real experience with MongoDB or Node.js I'm not sure whether to start with the MongoDB template and install Node.js on it, or start with the Node.js template and install MongoDB on that.

What do you think? Please tell me why.

Also, I may need additional libraries or frameworks on the frontend to work with Webix. Any suggestions?

Thanks for any replies.

Jeremy Davis's picture

Pity Webix isn't open source, as perhaps we could include it in an appliance?! Anyway, it's not to be...

Back to your question...

TBH, my knowledge tends to be broad rather than deep. And although I'm intimately familiar with TurnKey, I'm not particularly familiar with either MongoDB or NodeJS. So I'm not really sure of the best way to go. However, looking at the build code of our NodeJS and MongoDB appliances, it looks to me like it'd be easier to start with NodeJS and add MongoDB.

As a general rule, I recommend installing libraries and applications direct from Debian (TurnKey is based on Debian; v14.x = Debian 8/Jessie). That is done by using apt. E.g. to install MongoDB: 'apt-get install mongodb'. FWIW that's how we install MongoDB in our Mongo appliance.

Having said that, as the versions are frozen at release time, they can sometimes be a bit old. That's especially the case at the moment because we're currently running way behind schedule on our updated release (will be v15.0, based on Debian 9/Stretch). We actually install NodeJS from source, so that would be much trickier to replicate (although certainly possible).

I'd be really interested in how you go, as I've actually wanted to produce a MEAN (MongoDB, [E]Ngix, AngularJS and NodeJS) stack for a while. So your experience may be useful groundwork for that!

Add new comment