@kikiutils/mongoose

3.1.1 • Public • Published

@kikiutils/mongoose

npm version npm downloads codecov License

A Mongoose plugin for enhanced JSON normalization and common schema creation, with built-in support for pagination and automatic Decimal128 conversion.

Features

  • ✨ 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 converts Decimal128 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

Requirements

  • Mongoose >= 8
  • Node.js >= 18.12.1

Installation

Using pnpm:

pnpm add @kikiutils/mongoose mongoose

You can also use yarn, npm, or bun.

Usage

To be completed.

License

MIT License

Package Sidebar

Install

npm i @kikiutils/mongoose

Weekly Downloads

45

Version

3.1.1

License

MIT

Unpacked Size

261 kB

Total Files

143

Last publish

Collaborators

  • kiki-kanri