Kick start your nodejs app with mongodb via mongate.
mongate is inspired by need of having high level interface to node-mongodb-native apis. This removes most of the complexity and clutters to access mongodb natively.
While working on Gyansource (an approach to infuse social networking in marketing and sales.), I realize that there is apparent need of wrapper on node-mongodb-native library to enhace reusability in the application.
Gyansource retrieves and persist docuemnts, images, user records, user comments etc in mongodb. Mongate is designed to hide low level interaction step with node-mongodb-native lib, and provides a clear, intutive interface from user point of view.
if you like to create a document in database
use mongate as follows
document is a JSON, and a callback to know the status.
To read a document from database
dbRequest is special command like object, which keeps atleast details of CollectionName and _id. For more information look in to structures of DbRequest class as well as test/mongate_test.js
Install the module with:
npm install mongate
set your application specific settings in models/ApplicationConstants.js, such as dbName, application root/domain ...
and thats it, and mongate will do rest of the things such as setting up a connection, getting db client for mongodb, iterating over the items and much more, for details look at lib/mongate.js and test/mongate_test.js
var mongate = require('mongate'); mongate.readDocumentById(_id, callback)
Mongate is an effort to come up with simple, intiutive and complete apis to build a web application's database layer.
Contribution is needed from the community as and when mongate needs to evolve.
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
03-01-2015 v0.1.8 -updated README.md
21-07-2014 v0.1.7 -bug fix for get distinct value to avoid nulls in return set. -added doTransaction to do multiple db operations by creating a transaction (this is not yet a 2 phase commit but a start of concept, needs more work and will be part of coming releases.)
25-05-2014 v0.1.6 -added api to get distinct sorted values.
28-12-2013 mongate repository created
Copyright (c) 2013 Varun Tak. Licensed under the MIT license.