Minimongo - это такая JavaScript реализация MongoDB API. На данный момент реализовано:

  • Selectors
  • Modifiers
  • Fields projections
  • Querying with sort and limit
  • ObjectID generation
  • Geo-positional operator $near with GeoJSON parsing

Список реализованных функций MongoDB API наверное будет меняться.

Не реализованы пока функции агрегации. Базовую реализацию, типа distinct и mapReduce можно найти в пакете monbro:mongodb-mapreduce-aggregation.

Список нереализованных возможностей MongoDB API, надеюсь, будет сокращаться.

Синтаксис запросов в mongo и minimongo немного различается. Ниже - запрос в mongo и соответствующий ему запрос minimongo для некоторых функций.

Sort

db.getCollection('collection').find({}).sort({property: -1}) // Shell

collection.find({}, {sort: {property: -1}}) // Mini

Limit

db.getCollection('collection').find({}).limit(42) // Shell

collection.find({}, {limit: 42}) // Mini

Fields

db.getCollection('collection').find({}, {property: 1, username: 1}) // Shell

collection.find({}, {fields: {property: 1, username: 1}}) // Mini