ORM para Node.js e TypeScript que oferece acesso type-safe a bancos de dados como PostgreSQL, MySQL, SQLite e MongoDB.
Automattic/mongoose
Modelagem de objetos do MongoDB para Node.js, com schemas, models, validação e helpers de consulta para aplicações assíncronas.
- Estrelas
- 27,460
- Forks
- 4,074
- Issues abertas
- 182
- Último commit
- há 5 horas
O que é?
Mongoose é uma biblioteca de mapeamento objeto-documento (ODM) para MongoDB, desenvolvida para aplicações Node.js executadas em um ambiente assíncrono. Ela permite descrever a estrutura dos documentos com schemas e, em seguida, trabalhar com eles como instâncias de models que podem ser validadas, salvas, consultadas e atualizadas.
Um schema define tipos de campos, valores padrão, validadores (síncronos e assíncronos), getters e setters, índices, hooks de middleware, métodos de instância, métodos estáticos e plugins. Os models criados a partir de schemas oferecem métodos de consulta, como find, findOne e findById, e os documentos oferecem suporte a subdocumentos incorporados e ao populate para referências entre coleções.
Mongoose é baseado no driver oficial do MongoDB para Node.js e roda no Node.js, com suporte alpha a Deno. Também oferece suporte a várias conexões por meio de createConnection. Mongoose Studio, uma GUI para MongoDB que funciona no navegador e é compatível com models Mongoose existentes, também está disponível.
Recursos principais
- 01Definir schemas de documentos com tipos, valores padrão e validadores
- 02Consultar, criar, atualizar e excluir documentos por meio de métodos de model
- 03Subdocumentos incorporados e populate para referências entre coleções
- 04Hooks de middleware, métodos de instância, métodos estáticos e plugins
- 05Baseado no driver oficial do MongoDB para Node.js, com suporte a várias conexões
Casos de uso
- Adicionar uma camada de dados estruturada a um backend em Node.js ou Express que usa MongoDB
- Aplicar validações e valores padrão aos documentos antes de gravá-los no banco de dados
- Compartilhar lógica reutilizável de schemas entre models com plugins
Início rápido
- 1
Instale primeiro o Node.js e o MongoDB
- 2
Instale o pacote mongoose com o npm
npm install mongoose - 3
Conecte-se ao banco de dados MongoDB no seu código
await mongoose.connect('mongodb://127.0.0.1/my_database');
Antes de usar
- Para funcionar, é necessário instalar um servidor MongoDB separadamente.
Tópicos
Perguntas frequentes
- O que é mongoose?
- Modelagem de objetos do MongoDB para Node.js, com schemas, models, validação e helpers de consulta para aplicações assíncronas. Mongoose é uma biblioteca de mapeamento objeto-documento (ODM) para MongoDB, desenvolvida para aplicações Node.js executadas em um ambiente assíncrono. Ela permite descrever a estrutura dos documentos com schemas e, em seguida, trabalhar com eles como instâncias de models que podem ser validadas, salvas, consultadas e atualizadas.
- mongoose é gratuito? Qual é a licença?
- mongoose é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- mongoose ainda é mantido?
- Manutenção ativa. O último commit de mongoose foi em 21 de out. de 2026.
- Para que posso usar mongoose?
- Adicionar uma camada de dados estruturada a um backend em Node.js ou Express que usa MongoDB Aplicar validações e valores padrão aos documentos antes de gravá-los no banco de dados Compartilhar lógica reutilizável de schemas entre models com plugins
- Como instalar mongoose?
- Instale primeiro o Node.js e o MongoDB Instale o pacote mongoose com o npm: npm install mongoose Conecte-se ao banco de dados MongoDB no seu código: await mongoose.connect('mongodb://127.0.0.1/my_database');
- Onde consigo mongoose?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Automattic/mongoose
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
ORM para TypeScript e JavaScript no Node.js e em outras plataformas JS, compatível com os padrões Active Record e Data Mapper e diversos bancos SQL e NoSQL.
ORM em TypeScript para Node.js baseado nos padrões Data Mapper, Unit of Work e Identity Map, com suporte a SQL e MongoDB.
O driver oficial do MongoDB para Node.js e TypeScript, usado para conectar ao MongoDB e executar consultas no código da aplicação.
Meteor é uma plataforma JavaScript full-stack para criar apps web modernos que também podem ser executados em iOS, Android e desktop usando uma única base de código.
Software de fórum em Node.js com discussões em tempo real e suporte a Redis, MongoDB ou PostgreSQL.