TypeORM to Kysely Interface Generator
Transform TypeORM entity classes into clean Kysely TypeScript table interfaces with Generated annotations and Database interface.
At a glance
TypeORM to Kysely Interface Generator is a free, client-side developer tool that converts TypeORM entity classes into type-safe Kysely TypeScript table interfaces with Generated annotations, ColumnType unwrapping, nullable fields, and a master Database interface. Processing runs 100% in your browser.
100% Client-Side TypeORM Entity to Kysely Interface Generator
Zero Server UploadsConvert TypeORM entity classes into type-safe Kysely TypeScript interfaces with Generated annotations, ColumnType unwrapping, helper types, and Database interface.
Generated<T> Precision
Automatically wraps primary keys, auto-increment columns, timestamps (@CreateDateColumn), and defaulted fields inside Kysely's Generated<T> wrapper.
Helpers & Database Interface
Generates idiomatic Selectable, Insertable, and Updateable type aliases for each entity, plus a centralized Database interface.
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 Entity to Kysely Interface Generator?
How to Use TypeORM Entity to Kysely Interface Generator
Paste TypeORM Entity
Paste your TypeORM entity classes into the editor or load a preset.
Configure Options
Select naming convention preferences and helper type toggles.
Copy or Export
Copy the generated Kysely TypeScript interfaces or download as a .ts file.
TypeORM Entity to Kysely Table Interface Conversion
The converter parses the User entity class, generates the UserTable interface, wraps the @PrimaryGeneratedColumn() id and @CreateDateColumn() createdAt in Generated<T>, maps varchar columns to string, and synthesizes the root Database interface.
@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 interface UserTable {
id: Generated<number>;
name: string;
email: string;
createdAt: Generated<Date>;
}
export interface Database {
users: UserTable;
}
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 primary keys and timestamps to Kysely?
How are TypeORM relations handled?
Is my schema code private?
Methodology
This tool runs entirely in your browser. The example above shows a representative input and the result it produces.
Last updated .