TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns.
Implicit Transactions
MikroORM allows handling transactions automatically. When you call em.flush()
, all computed changes are wrapped inside a database transaction.
DRY Entities
Uses source code analysis so you do not have to repeat yourself when defining entities. Simply define correct TypeScript types and you are good to go!
Supports both SQL and NoSQL
Supports MongoDB, MySQL, MariaDB, PostgreSQL and SQLite databases, and more can be supported via custom drivers right now.