TypeORM to Drizzle ORM Schema Converter
Transform TypeORM entity classes into clean, idiomatic Drizzle ORM schema table definitions with dialect support.
At a glance
TypeORM to Drizzle ORM Schema Converter is a free, client-side developer utility that converts TypeORM entity classes into idiomatic Drizzle ORM schema definitions (pgTable, mysqlTable, sqliteTable) with column types, primary keys, timestamps, and foreign key relations. Processing runs 100% in your browser.
100% Client-Side TypeORM to Drizzle ORM Schema Converter
Zero Server UploadsConvert TypeORM entity classes into idiomatic Drizzle ORM schema definitions (pgTable, mysqlTable, sqliteTable) with column types, primary keys, and relations.
Multi-Dialect Targeting
Generates PostgreSQL (pgTable), MySQL (mysqlTable), or SQLite (sqliteTable) schemas with dialect-matched builders, serials, and enums.
Relations & Constraints
Maps TypeORM @ManyToOne() and @JoinColumn() to Drizzle .references() foreign keys and companion relations() definitions.
100% Client-Side Privacy
All AST parsing and code synthesis happen locally in your web browser. Sensitive entity classes and schema structures never touch any remote server.
You May Also Need
Why Use This TypeORM to Drizzle ORM Schema Converter?
How to Use TypeORM to Drizzle ORM Schema Converter
Paste TypeORM Entity
Paste your TypeORM entity classes into the editor or load a preset.
Select Dialect
Choose your target Drizzle database dialect (PostgreSQL, MySQL, or SQLite).
Copy or Export
Copy the generated Drizzle schema code or download it as a .ts file.
TypeORM Entity to Drizzle pgTable Conversion
The converter parses the User entity class and @Entity('users') decorator, maps @PrimaryGeneratedColumn() to serial('id').primaryKey(), varchar columns to varchar('name', { length: 255 }).notNull(), and @CreateDateColumn() to timestamp('created_at').defaultNow().notNull().
@Entity('users')
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column({ type: 'varchar', length: 255 })
name: string;
@Column({ type: 'varchar', length: 255, unique: true })
email: string;
@CreateDateColumn()
createdAt: Date;
}
export const users = pgTable('users', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 255 }).notNull(),
email: varchar('email', { length: 255 }).notNull().unique(),
createdAt: timestamp('created_at').defaultNow().notNull()
});
Technical Specifications & Engine Details
| Specification | Details |
|---|---|
| Supported Formats | TYPESCRIPT, TEXT → TYPESCRIPT, TEXT |
| Execution Mode | 100% Client-Side In-Browser (client) |
| Browser Requirements | Modern browser with ES2020 JavaScript support. |
| Performance Constraints | Pure client-side conversion. Custom decorators without standard TypeORM semantics are safely skipped. |
100% Client-Side Privacy Guarantee
Your schema code remains strictly on your local device. Zero data is transmitted to external servers.
Frequently Asked Questions
How does this tool map TypeORM column decorators to Drizzle?
Does it support Drizzle relations?
Is my schema data private?
Methodology
This tool runs entirely in your browser. The example above shows a representative input and the result it produces.
Last updated .