npx @better-auth/cli generate: Error: Cannot find module '@babel/core' #688

Closed
opened 2026-03-13 08:00:26 -05:00 by GiteaMirror · 5 comments
Owner

Originally created by @CatStudioApp on GitHub (Feb 17, 2025).

Is this suited for github?

  • Yes, this is suited for github

To Reproduce

  1. Use https://github.com/opennextjs/opennextjs-cloudflare i.e. https://opennext.js.org/cloudflare
  2. integrate cloudflare d1 with better auth
  3. Run npx @better-auth/cli generate

Error

Current vs. Expected behavior

Current:

✗ npx @better-auth/cli generate

node:internal/modules/cjs/loader:1225
  const err = new Error(message);
              ^

Error: Cannot find module '@babel/core'
Require stack:
- /Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/helper-create-class-features-plugin/lib/index.js
- /Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/plugin-transform-typescript/lib/index.js
- /Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/preset-typescript/lib/index.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15)
    at Module._load (node:internal/modules/cjs/loader:1051:27)
    at Module.require (node:internal/modules/cjs/loader:1311:19)
    at require (node:internal/modules/helpers:179:18)
    at Object.<anonymous> (/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/helper-create-class-features-plugin/lib/index.js:31:13)
    at Module._compile (node:internal/modules/cjs/loader:1469:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
    at Module.load (node:internal/modules/cjs/loader:1288:32)
    at Module._load (node:internal/modules/cjs/loader:1104:12)
    at Module.require (node:internal/modules/cjs/loader:1311:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/helper-create-class-features-plugin/lib/index.js',
    '/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/plugin-transform-typescript/lib/index.js',
    '/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/preset-typescript/lib/index.js'
  ]
}

Node.js v20.18.1

What version of Better Auth are you using?

"better-auth": "^1.1.18",

Provide environment information

macOS 15.3.1 (24D70)

Which area(s) are affected? (Select all that apply)

Other

Auth config (if applicable)

import { getDB } from "@/db";
import { betterAuth } from "better-auth";
import { drizzleAdapter } from "better-auth/adapters/drizzle";

export const auth = betterAuth({
  database: drizzleAdapter(getDB(), {
    provider: "sqlite",
  }),
});

Additional context

No response

Originally created by @CatStudioApp on GitHub (Feb 17, 2025). ### Is this suited for github? - [x] Yes, this is suited for github ### To Reproduce 1. Use https://github.com/opennextjs/opennextjs-cloudflare i.e. https://opennext.js.org/cloudflare 2. integrate cloudflare d1 with better auth 3. Run `npx @better-auth/cli generate` Error ### Current vs. Expected behavior Current: ``` ✗ npx @better-auth/cli generate node:internal/modules/cjs/loader:1225 const err = new Error(message); ^ Error: Cannot find module '@babel/core' Require stack: - /Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/helper-create-class-features-plugin/lib/index.js - /Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/plugin-transform-typescript/lib/index.js - /Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/preset-typescript/lib/index.js at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15) at Module._load (node:internal/modules/cjs/loader:1051:27) at Module.require (node:internal/modules/cjs/loader:1311:19) at require (node:internal/modules/helpers:179:18) at Object.<anonymous> (/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/helper-create-class-features-plugin/lib/index.js:31:13) at Module._compile (node:internal/modules/cjs/loader:1469:14) at Module._extensions..js (node:internal/modules/cjs/loader:1548:10) at Module.load (node:internal/modules/cjs/loader:1288:32) at Module._load (node:internal/modules/cjs/loader:1104:12) at Module.require (node:internal/modules/cjs/loader:1311:19) { code: 'MODULE_NOT_FOUND', requireStack: [ '/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/helper-create-class-features-plugin/lib/index.js', '/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/plugin-transform-typescript/lib/index.js', '/Users/username/.npm/_npx/167ca1f116d365e6/node_modules/@babel/preset-typescript/lib/index.js' ] } Node.js v20.18.1 ``` ### What version of Better Auth are you using? "better-auth": "^1.1.18", ### Provide environment information ```bash macOS 15.3.1 (24D70) ``` ### Which area(s) are affected? (Select all that apply) Other ### Auth config (if applicable) ```typescript import { getDB } from "@/db"; import { betterAuth } from "better-auth"; import { drizzleAdapter } from "better-auth/adapters/drizzle"; export const auth = betterAuth({ database: drizzleAdapter(getDB(), { provider: "sqlite", }), }); ``` ### Additional context _No response_
GiteaMirror added the bug label 2026-03-13 08:00:26 -05:00
Author
Owner

@kongebra commented on GitHub (Feb 28, 2025):

Just got the same error, the second time running the command npx @better-auth/cli generate. In a Next.js, just started the project.

On a Mac (OS 14.6.1)

import { betterAuth } from "better-auth";
import { prismaAdapter } from "better-auth/adapters/prisma";
import prisma from "./prisma";

export const auth = betterAuth({
  database: prismaAdapter(prisma, {
    provider: "postgresql",
  }),

  emailAndPassword: {
    enabled: true,
  },
});

deps:

"dependencies": {
  "@prisma/client": "6.4.1",
  "better-auth": "^1.1.21",
  "class-variance-authority": "^0.7.1",
  "clsx": "^2.1.1",
  "lucide-react": "^0.477.0",
  "next": "15.2.0",
  "react": "^19.0.0",
  "react-dom": "^19.0.0",
  "tailwind-merge": "^3.0.2",
  "tailwindcss-animate": "^1.0.7"
},
"devDependencies": {
  "@eslint/eslintrc": "^3",
  "@tailwindcss/postcss": "^4",
  "@types/node": "^20",
  "@types/react": "^19",
  "@types/react-dom": "^19",
  "eslint": "^9",
  "eslint-config-next": "15.2.0",
  "prisma": "^6.4.1",
  "tailwindcss": "^4",
  "typescript": "^5"
}

Output:

% npx @better-auth/cli generate
node:internal/modules/cjs/loader:1145
  const err = new Error(message);
              ^

Error: Cannot find module '@babel/core'
Require stack:
- /Users/username/redacted/app-name/node_modules/@babel/helper-create-class-features-plugin/lib/index.js
- /Users/username/redacted/app-name/node_modules/@babel/plugin-transform-typescript/lib/index.js
- /Users/username/redacted/app-name/node_modules/@babel/preset-typescript/lib/index.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1145:15)
    at Module._load (node:internal/modules/cjs/loader:986:27)
    at Module.require (node:internal/modules/cjs/loader:1233:19)
    at require (node:internal/modules/helpers:179:18)
    at Object.<anonymous> (/Users/username/redacted/app-name/node_modules/@babel/helper-create-class-features-plugin/lib/index.js:31:13)
    at Module._compile (node:internal/modules/cjs/loader:1358:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
    at Module.load (node:internal/modules/cjs/loader:1208:32)
    at Module._load (node:internal/modules/cjs/loader:1024:12)
    at Module.require (node:internal/modules/cjs/loader:1233:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/Users/username/redacted/app-name/node_modules/@babel/helper-create-class-features-plugin/lib/index.js',
    '/Users/username/redacted/app-name/node_modules/@babel/plugin-transform-typescript/lib/index.js',
    '/Users/username/redacted/app-name/node_modules/@babel/preset-typescript/lib/index.js'
  ]
}

Node.js v20.16.0

UPDATE: Just ran yarn and it is now working. Note that I am 100% sure I had the node_modules folder previously, and had just in a few minutes started up the project, installed shadcn/ui, Prisma and better-auth, and spun a Postgres up locally with Docker.

@kongebra commented on GitHub (Feb 28, 2025): Just got the same error, the second time running the command `npx @better-auth/cli generate`. In a Next.js, just started the project. On a Mac (OS 14.6.1) ```typescript import { betterAuth } from "better-auth"; import { prismaAdapter } from "better-auth/adapters/prisma"; import prisma from "./prisma"; export const auth = betterAuth({ database: prismaAdapter(prisma, { provider: "postgresql", }), emailAndPassword: { enabled: true, }, }); ``` deps: ```json "dependencies": { "@prisma/client": "6.4.1", "better-auth": "^1.1.21", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "lucide-react": "^0.477.0", "next": "15.2.0", "react": "^19.0.0", "react-dom": "^19.0.0", "tailwind-merge": "^3.0.2", "tailwindcss-animate": "^1.0.7" }, "devDependencies": { "@eslint/eslintrc": "^3", "@tailwindcss/postcss": "^4", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", "eslint": "^9", "eslint-config-next": "15.2.0", "prisma": "^6.4.1", "tailwindcss": "^4", "typescript": "^5" } ``` Output: ```shell % npx @better-auth/cli generate node:internal/modules/cjs/loader:1145 const err = new Error(message); ^ Error: Cannot find module '@babel/core' Require stack: - /Users/username/redacted/app-name/node_modules/@babel/helper-create-class-features-plugin/lib/index.js - /Users/username/redacted/app-name/node_modules/@babel/plugin-transform-typescript/lib/index.js - /Users/username/redacted/app-name/node_modules/@babel/preset-typescript/lib/index.js at Module._resolveFilename (node:internal/modules/cjs/loader:1145:15) at Module._load (node:internal/modules/cjs/loader:986:27) at Module.require (node:internal/modules/cjs/loader:1233:19) at require (node:internal/modules/helpers:179:18) at Object.<anonymous> (/Users/username/redacted/app-name/node_modules/@babel/helper-create-class-features-plugin/lib/index.js:31:13) at Module._compile (node:internal/modules/cjs/loader:1358:14) at Module._extensions..js (node:internal/modules/cjs/loader:1416:10) at Module.load (node:internal/modules/cjs/loader:1208:32) at Module._load (node:internal/modules/cjs/loader:1024:12) at Module.require (node:internal/modules/cjs/loader:1233:19) { code: 'MODULE_NOT_FOUND', requireStack: [ '/Users/username/redacted/app-name/node_modules/@babel/helper-create-class-features-plugin/lib/index.js', '/Users/username/redacted/app-name/node_modules/@babel/plugin-transform-typescript/lib/index.js', '/Users/username/redacted/app-name/node_modules/@babel/preset-typescript/lib/index.js' ] } Node.js v20.16.0 ``` --- **UPDATE**: Just ran `yarn` and it is now working. Note that I am 100% sure I had the node_modules folder previously, and had just in a few minutes started up the project, installed shadcn/ui, Prisma and better-auth, and spun a Postgres up locally with Docker.
Author
Owner

@LarsLrn commented on GitHub (Mar 4, 2025):

Encountered the same issue and found a solution. Add the CLI and babel to your dev dependencies:

    "@babel/core": "^7.26.9",
    "@better-auth/cli": "^1.2.2",

Then install and run npx @better-auth/cli generate

@LarsLrn commented on GitHub (Mar 4, 2025): Encountered the same issue and found a solution. Add the CLI and babel to your dev dependencies: ``` "@babel/core": "^7.26.9", "@better-auth/cli": "^1.2.2", ``` Then install and run `npx @better-auth/cli generate`
Author
Owner

@CatStudioApp commented on GitHub (Mar 4, 2025):

this is really a bad issue.

going to still use next-auth

@CatStudioApp commented on GitHub (Mar 4, 2025): this is really a bad issue. going to still use next-auth
Author
Owner

@CatStudioApp commented on GitHub (Mar 19, 2025):

with all respect to @kongebra's great work here. as long as this bug's still here, I'm not going to use this lib in prod

@CatStudioApp commented on GitHub (Mar 19, 2025): with all respect to @kongebra's great work here. as long as this bug's still here, I'm not going to use this lib in prod
Author
Owner

@Bekacru commented on GitHub (Mar 23, 2025):

@CatStudioApp this is related to your setup with your package manager and how npx executables are resolved. I don't think this is something we can resolve directly. And this isn't a critical part of the library. It's a "goody" we provide to make setting it up easier.

@Bekacru commented on GitHub (Mar 23, 2025): @CatStudioApp this is related to your setup with your package manager and how npx executables are resolved. I don't think this is something we can resolve directly. And this isn't a critical part of the library. It's a "goody" we provide to make setting it up easier.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/better-auth#688