A Mongoose plugin for enhanced JSON normalization and common schema creation, with built-in support for pagination and automatic Decimal128 conversion.
- ✨ Flexible Connections: Supports both default and custom connections, automatically creating connections when none are provided
- 🔌 Plugin Integration: Automatically integrates
mongoose-aggregate-paginate-v2
,mongoose-paginate-v2
, and custom normalization for cleaner JSON outputs - 🛠 Predefined & Customizable Schemas: Provides common schemas (boolean, date, decimal128, number, objectId, string) with the flexibility to customize attributes such as
private
,required
,unique
,default
, and more - 🧮 Decimal Precision: Supports
Decimal128
fields with options for automatic rounding and fixed decimal precision - 🔄 Optimized JSON Output: Adds an
id
field, removes_id
and__v
, hides private fields, and convertsDecimal128
fields to strings in JSON responses - 🔄 Reference Management: Enables easy conversion of ObjectId references to fully populated documents with field selection and population options
- 🔧 Utility Functions: Includes helper functions for converting and normalizing documents, handling ObjectId transformations, and processing schema fields
-
Mongoose
>= 8
-
Node.js
>= 18.12.1
Using pnpm:
pnpm add @kikiutils/mongoose mongoose
You can also use yarn
, npm
, or bun
.
To be completed.