A curated list of plugins for Mongoose π.
A collection of extensions to make your life with MongoDB easier.
- General Utilities
- Developer Tools
- Validation & Security
- Caching & Performance
- Pagination & Query
- Internationalization (i18n)
- Tree & Hierarchical Data
- Timestamps & Audit
- File & Media Handling
- Miscellaneous
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoose-deep-populate | Enable deep population of nested models. | |||
| mongoose-troop | Adds modular, reusable plugins and methods to Mongoose schemas, promoting clean code and schema composition. | |||
| mongoose-autopopulate | Automatically populates ref fields without calling .populate(). |
|||
| mongoose-findorcreate | Adds a findOrCreate helper method to Mongoose models, simplifying the pattern of finding a document or creating it if it does not exist. |
|||
| mongoose-relationship | Manages bi-directional document references, keeping parent and child relationships automatically in sync. | |||
| mongoose-long | Adds support for 64-bit integers (Long) in Mongoose schemas, enabling storage of large numeric values. |
|||
| mongoose-update-if-current | Brings optimistic concurrency control to documents by incrementing version numbers on each save and preventing previous versions of a document from being saved over the current version. | |||
| mongoose-plugin-autoinc | Auto-increments any ID field on schema every time a document is saved. | |||
| mongoose-lean-virtuals | Adds support for virtuals in .lean() queries. |
|||
| mongoose-url-slugs | Automatically generates URL-friendly slugs for Mongoose documents based on one or more fields. | |||
| mongoose-lean-defaults | Adds schema default values to documents returned from .lean() queries. |
|||
| mongoose-lean-getters | Applies getters to .lean() query results. |
|||
| mongoose-legacy-pluralize | Restores Mongooseβs legacy pluralization logic for collection names, useful for backward compatibility with older codebases. | |||
| mongoose-currency-convert | Adds automatic currency conversion capabilities to Mongoose models using real-time exchange rates. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| swagger-mongoose | Generates Mongoose models and schemas from Swagger/OpenAPI definitions. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| passport-local-mongoose | Simplifies integration of Passport.js local authentication with Mongoose models, including password hashing and user management. | |||
| mongoose-auth | Provides authentication helpers for Mongoose models, supporting password hashing, OAuth, and user management. | |||
| mongoose-unique-validator | Validates uniqueness of fields before saving. | |||
| mongoose-validator | Wrapper for validator.js to use as Mongoose validators. |
|||
| mongoose-beautiful-unique-validation | Enhances MongoDB unique constraint errors with cleaner, user-friendly validation messages. | |||
| mongoose-hidden | Hides sensitive fields (like passwords or tokens) from JSON.stringify(). |
|||
| mongoose-acl | Adds access control lists (ACL) to Mongoose models, enabling fine-grained permissions. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| cachegoose | Adds caching to Mongoose queries using Redis or other backends, reducing database load. | |||
| ts-cache-mongoose | Cache query and aggregate in mongoose using in-memory or redis. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoosastic | Integrates Mongoose models with Elasticsearch, providing real-time indexing and search capabilities. | |||
| mongoose-paginate-v2 | Advanced pagination plugin for queries. | |||
| mongoose-aggregate-paginate-v2 | Pagination for aggregation queries. | |||
| mongoose-fuzzy-searching | Fuzzy full-text search across multiple fields. | |||
| mongoose-paginate-ts | TypeScript-friendly pagination plugin for Mongoose models, offering flexible query and result pagination utilities. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoose-intl | Adds multilingual field support to Mongoose schemas with locale fallback and helpers. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoose-nested-set | Implements the Nested Set pattern for hierarchical data. | |||
| mongoose-tree | Adds tree structure support to Mongoose schemas, enabling parent-child relationships and hierarchical queries. | |||
| mongoose-mpath | Implements materialized path pattern for hierarchical data in Mongoose, enabling easy retrieval of ancestors, descendants, and subtrees. | |||
| mongoose-materialized | Adds support for hierarchical data using the materialized path pattern. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoose-timestamp | Automatically adds createdAt and updatedAt. |
|||
| mongoose-version | Automatically maintains document version history. | |||
| mongoose-patch-history | Maintains a history of changes to documents using JSON Patch format, allowing auditing and rollback of updates. | |||
| mongoose-diff-history | Tracks document diffs between versions for lightweight auditing. | |||
| mongoose-history-plugin | Tracks changes to Mongoose documents over time, maintaining a history of modifications for auditing and rollback purposes. | |||
| ts-patch-mongoose | Track changes of mongoose models and save them as patch history (audit log) in separate collection. | |||
| mongoose-history-trace | Records detailed change logs of Mongoose documents, including who made the change and when, for audit and tracking purposes. | |||
| mongoose-history-diff | Tracks changes to Mongoose documents by storing diffs between versions, enabling efficient versioning and audit trails. | |||
| mongoose-activity | Tracks and logs user activities or document changes, providing an easy way to audit events in Mongoose models. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoose-attachments | Adds file attachment support for Mongoose models with multiple storage backends. |
| Plugin | Stars | Downloads | Last commit | Description |
|---|---|---|---|---|
| mongoose-delete | Soft delete with restore and query helpers. | |||
| mongoose-sequence | Auto-increment fields. | |||
| mongoose-encryption | Transparent field-level encryption. | |||
| mongoose-field-encryption | Provides field-level encryption for Mongoose schemas, enabling transparent encryption and decryption of sensitive data. | |||
| mongoose-crate | Handles file attachments in Mongoose models with support for multiple storage backends and file transformations. |
π Sources: community plugins, npm, and plugins.mongoosejs.io.