ORM de TypeScript para Node.js que ofrece acceso a bases de datos con seguridad de tipos en PostgreSQL, MySQL, SQLite, MongoDB y otras bases de datos.
Automattic/mongoose
Modelado de objetos para MongoDB en Node.js, con esquemas, modelos, validación y métodos auxiliares de consulta para aplicaciones asíncronas.
- Estrellas
- 27,460
- Forks
- 4,074
- Issues abiertos
- 182
- Último commit
- hace 5 horas
¿Qué es?
Mongoose es una biblioteca de modelado de datos de objetos (ODM) para MongoDB, diseñada para aplicaciones Node.js que se ejecutan en un entorno asíncrono. Permite definir la estructura de los documentos mediante esquemas y trabajar con ellos como instancias de modelos que se pueden validar, guardar, consultar y actualizar.
Un esquema define los tipos de campos, los valores predeterminados, los validadores (síncronos y asíncronos), getters y setters, índices, hooks de middleware, métodos de instancia, métodos estáticos y plugins. Los modelos creados a partir de esquemas ofrecen métodos de consulta como find, findOne y findById, y los documentos admiten subdocumentos incrustados y populate para referencias entre colecciones.
Mongoose se basa en el driver oficial de MongoDB para Node.js y funciona en Node.js, con soporte alpha para Deno. También permite usar varias conexiones mediante createConnection. Mongoose Studio, una GUI de MongoDB complementaria que funciona en el navegador y es compatible con modelos Mongoose existentes, también está disponible.
Funciones clave
- 01Definir esquemas de documentos con tipos, valores predeterminados y validadores
- 02Consultar, crear, actualizar y eliminar documentos mediante métodos de modelo
- 03Subdocumentos incrustados y populate para referencias entre colecciones
- 04Hooks de middleware, métodos de instancia, métodos estáticos y plugins
- 05Basado en el driver oficial de MongoDB para Node.js, con soporte para varias conexiones
Casos de uso
- Añadir una capa de datos estructurada a un backend de Node.js o Express que use MongoDB
- Aplicar validaciones y valores predeterminados a los documentos antes de guardarlos en la base de datos
- Compartir lógica de esquemas reutilizable entre modelos mediante plugins
Inicio rápido
- 1
Instala primero Node.js y MongoDB
- 2
Instala el paquete mongoose con npm
npm install mongoose - 3
Conéctate a tu base de datos MongoDB desde el código
await mongoose.connect('mongodb://127.0.0.1/my_database');
Antes de usarlo
- Para que funcione, necesitas instalar por separado un servidor MongoDB.
Temas
Preguntas frecuentes
- ¿Qué es mongoose?
- Modelado de objetos para MongoDB en Node.js, con esquemas, modelos, validación y métodos auxiliares de consulta para aplicaciones asíncronas. Mongoose es una biblioteca de modelado de datos de objetos (ODM) para MongoDB, diseñada para aplicaciones Node.js que se ejecutan en un entorno asíncrono. Permite definir la estructura de los documentos mediante esquemas y trabajar con ellos como instancias de modelos que se pueden validar, guardar, consultar y actualizar.
- ¿mongoose es gratuito? ¿Qué licencia tiene?
- mongoose es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿mongoose sigue mantenido?
- Mantenimiento activo. El último commit de mongoose fue el 21 oct 2026.
- ¿Para qué puedo usar mongoose?
- Añadir una capa de datos estructurada a un backend de Node.js o Express que use MongoDB Aplicar validaciones y valores predeterminados a los documentos antes de guardarlos en la base de datos Compartir lógica de esquemas reutilizable entre modelos mediante plugins
- ¿Cómo se instala mongoose?
- Instala primero Node.js y MongoDB Instala el paquete mongoose con npm: npm install mongoose Conéctate a tu base de datos MongoDB desde el código: await mongoose.connect('mongodb://127.0.0.1/my_database');
- ¿Dónde consigo mongoose?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Automattic/mongoose
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
ORM para TypeScript y JavaScript en Node.js y otras plataformas JS, compatible con los patrones Active Record y Data Mapper y con numerosas bases de datos SQL y NoSQL.
ORM para Node.js escrito en TypeScript, basado en los patrones Data Mapper, Unit of Work e Identity Map, compatible con SQL y MongoDB.
Driver oficial de MongoDB para Node.js y TypeScript, que permite conectarse a MongoDB y ejecutar consultas desde el código de una aplicación.
Meteor es una plataforma JavaScript full-stack para crear aplicaciones web modernas y también orientarlas a iOS, Android y escritorio desde una sola base de código.
Software de foros para Node.js con debates en tiempo real y soporte para Redis, MongoDB o PostgreSQL.