a TypeScript ORM for Postgres
An opinionated ORM for TypeScript/node/postgres.
SELECT/INSERT/UPDATE operations are bulk)See joist-orm.io for documentation.
For contributing to Joist itself, after checkout:
yarn installyarn build to compile all packagesyarn db to boot up a Docker postgres instance w/the integration test schema.yarn test to run the tests.yarn workspaces run formatThe build runs two complementary TypeScript checks after tsdown emits the package artifacts:
yarn typecheck:packages checks each public package's source with its ESM-first NodeNext configuration. It catches source errors that tsdown's isolated transforms do not report and runs after the build so workspace package imports can resolve the emitted declarations.yarn typecheck:consumers checks the unit-test project and every joist-tests-* workspace against the emitted package exports. This covers the ESM and CommonJS declaration paths, generated module augmentations, and other issues that only appear when Joist is consumed as a package.yarn start runs tsdown and TypeScript in watch mode as separate mprocs processes. build:watch updates the ESM and CommonJS artifacts, while typecheck:watch incrementally checks the complete package and consumer project graph. The typecheck watcher emits declarations because TypeScript project-reference builds cannot use --noEmit; build:watch does not clean them while both processes are running, and the next normal build removes them.
MIT
No open issues yet, or sync has not completed.