916 karma · joined March 31, 2012
There are some assholes out there, so stop being naïve. This is a very good cautionary tale about what happens if you do.
I hope this kind of technology sees the day but I'm very skeptical about it working on general-purpose content and not just structured content such as news, as it does today.
This system is far from perfect, and this country is definitely not the best place to create a company. But let's not spread crazy rumors like this.
You can use that once you've outgrown NeDB.
It's true that it's easy to package such applications for unix systems, but it's much harder on Windows. What makes Node Webkit great is the fact that it's cross-platform with very little pain, and in that case having the DB in the JS code makes packaging a breeze.
a) and b) The database is loosely coupled with the query language implementation, so it could be possible to change the query semantics without breaking it. That said I have other priorities for now (some adaptation for Node Webkit, porting it to the browser).
c) NeDB queries return vanilla objects or array of objects , on which you can use all the underscore functions you want.
d) Depends what you want to do. If you want to write a REPL I think it shouldn't be too difficult, and it may be a good idea to do one. In the meantime, since the API is the same as MongoDB's, you can learn NeDB using MongoDB's REPL :)
As an aside, I'm considering enabling large datasets for NeDB as some users asked, but that would be a lot of work so I'll wait for more requests.
But if you need multiple programs to use your DB at once you need a more powerful solution such as MongoDB. The goal of NeDB is to bring DB features to desktop apps or low concurrency webapps, not replace Mongo and the like.
For example, I'm writing a pure JS database (https://github.com/louischatriot/nedb), and using indexing I was able to speed it up hundreds fold. That's clearly not something I could have done without knowing about self-balancing binary search trees.
I also think that knowing algorithms does make you a better programmer, even if you don't use them on a daily basis.
This is useful for small projects that don't need the power of a behemoth like MongoDB and want to be installable by a simple git-clone + npm install
I am very interested in feedback on it! https://github.com/louischatriot/nedb