diff --git a/README.md b/README.md index 20e3127..093f4df 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,8 @@ npm install pgstrap --save-dev npm run db:migrate ``` -6. Generate types and structure: +6. Generate types and structure from your migrations with an in-memory PGlite + database: ```bash npm run db:generate ``` @@ -55,7 +56,7 @@ npm install pgstrap --save-dev - `npm run db:migrate` - Run pending migrations - `npm run db:reset` - Drop and recreate the database, then run all migrations -- `npm run db:generate` - Generate types and structure dumps. Use `pgstrap generate --pglite` to run migrations against an in-memory PGlite instance. +- `npm run db:generate` - Generate types and structure dumps by running migrations against an in-memory PGlite instance. - `npm run db:create-migration` - Create a new migration file ### Configuration diff --git a/src/init.ts b/src/init.ts index b84f9cd..ae2cf4c 100644 --- a/src/init.ts +++ b/src/init.ts @@ -1,10 +1,10 @@ -import type { Context } from "./get-project-context" -import path from "path" import * as fs from "fs" -import pgstrapPackage from "../package.json" -import kyselyTypesTemplate from "./templates/kysely-types.template" +import path from "path" import { mkdirpSync } from "mkdirp" +import pgstrapPackage from "../package.json" +import type { Context } from "./get-project-context" import getDbClientTemplate from "./templates/get-db-client.template" +import kyselyTypesTemplate from "./templates/kysely-types.template" export const initPgstrap = async (ctx: Pick) => { const { cwd } = ctx @@ -16,7 +16,7 @@ export const initPgstrap = async (ctx: Pick) => { pkg.scripts["db:migrate"] = "pgstrap migrate" pkg.scripts["db:reset"] = "pgstrap reset" - pkg.scripts["db:generate"] = "pgstrap generate" + pkg.scripts["db:generate"] = "pgstrap generate --pglite" pkg.scripts["db:create-migration"] = "pgstrap create-migration" if (!pkg.devDependencies) pkg.devDependencies = {} diff --git a/tests/init.test.ts b/tests/init.test.ts index cd4ec4b..d7cdfe6 100644 --- a/tests/init.test.ts +++ b/tests/init.test.ts @@ -1,4 +1,4 @@ -import { beforeEach, afterEach, test, expect } from "bun:test" +import { afterEach, beforeEach, expect, test } from "bun:test" import fs from "fs" import os from "os" import path from "path" @@ -25,6 +25,6 @@ test("initPgstrap writes scripts to package.json", async () => { ) expect(pkg.scripts["db:migrate"]).toBe("pgstrap migrate") expect(pkg.scripts["db:reset"]).toBe("pgstrap reset") - expect(pkg.scripts["db:generate"]).toBe("pgstrap generate") + expect(pkg.scripts["db:generate"]).toBe("pgstrap generate --pglite") expect(pkg.scripts["db:create-migration"]).toBe("pgstrap create-migration") })