Mongorito is based on ES6 generators, so you will not need to write a single callback (or promise). Enjoy the comfort of writing synchronous code, while retaining the power of Node.js' async nature.
Mongorito does not re-invent the wheel. Take a look at the code example above, same principles as in ActiveRecord, Mongoose and others. Learning curve is so low, you'll forget when you opened the docs last time.
Yes, like in Express and Koa. Put functions before or after CRUD methods and control the flow. Modify data, abort the operation and everything else I could not think of.
That's right, no schema. One of the best MongoDB strengths is that it's totally schema-less. Mongorito does not want to take that feature away from you. Just use get and set methods and everything will go smooth.
Mongorito borrowed that idea from the awesome Mongoose. Population allows replacing ObjectID's in query response with actual documents from other collections.
Every bit of Mongorito's functionality is tested. Just as main codebase, tests are easy to read and understand. If you don't believe it, check it yourself by running npm test after cloning the repository.
Mongorito supports multiple database connections at the same time. Every model can have different database connection and API stays the same. All models that don't have custom connection, use the global default.
More features coming soon. Open a github issue if you have suggestions.
Mongorito is very easy to learn and a pleasure to work with. To get you started, I wrote a quick tutorial, where you will manage posts for a blog. There are also non-boring guides available, if you decided to use Mongorito in your projects.
Yes, that's all it takes! Tweet, follow and star it on GitHub!