A TypeScript ORM inspired by Entity Framework Core. Decorators, migrations, scaffold, bulk operations, transactions, and 7 database providers.
@Entity('Users')
class User {
@PrimaryKey() id!: number;
@Column() @Index() email!: string;
@Version() version!: number;
}
const db = new AppDb();
db.users.add({ id: 1, email: 'alice@ex.com' });
await db.saveChanges();
@Entity, @Column, @PrimaryKey, @Index, @Version, @SoftDelete, relationships. Clean and declarative.
beginTransaction(), commit(), rollback(). Atomic operations across multiple entities.
bulkInsert, bulkUpdate, upsert, deleteWhere, updateWhere. High-performance batch operations.
where, select, orderBy, skip, take, first, any, all, count. Familiar API for .NET developers.
Install the core + the provider for your database. Same API everywhere.
@romatech/orm-providers-mssql
Full CRUD, migrations, scaffold. Parameterized queries.
@romatech/orm-providers-pgsql
Full CRUD, migrations, scaffold. Dollar-sign parameters.
@romatech/orm-providers-mysql
Full CRUD, migrations, scaffold. Backtick identifiers.
@romatech/orm-providers-oracle
Full CRUD, migrations, scaffold. Requires Instant Client.
@romatech/orm-providers-mongodb
Document DB. Transactions (replica set). Server-side queries.
@romatech/orm-providers-sqlite
Zero native deps (WASM). File or in-memory. Works everywhere.
@romatech/orm-providers-memory
Zero-cost provider for unit tests. Full QueryBuilder support.
@romatech/orm-cli
Migrations, scaffold, database management from the terminal.