dbos-inc / dbos-transact

The TypeScript framework for backends that scale
https://docs.dbos.dev
MIT License
335 stars 22 forks source link

Add TypeORM Template #419

Closed kraftp closed 3 months ago

kraftp commented 3 months ago

This PR adds a new application template using TypeORM instead of Knex. To instantiate a new application with this template, run:

npx @dbos-inc/create@latest -t hello-typeorm -n <app-name>

This PR also deprecates support for TypeORM schema synchronization, which is unsafe for production use. Instead, we strongly recommend using TypeORM migrations.

chuck-dbos commented 3 months ago

Notes from slack huddle with PK (as I remember them):

We will, in the future: Try to reconcile @OrmEntities with the typeorm "config" file This may require invoking typeorm's logic at the JS level instead of npx. (hello-typeorm/datasource.ts is generally an unfriendly melange of code and configuration, seemingly redundant) For this week, it will be a documented hazard. Help the end user ensure that their collection of migrations leads to a database that matches their entities In test, and eventually at deploy For this week, we will help them understand the process of getting it right; based on that we can improve doc & tooling

Other loose ends: Drop the example from the examples repo Fix yky to be cloud deployable with migrations Once those are working - remove: createUserSchema / dropUserSchema