Reference

Package Manager Support

Use npm, yarn, or pnpm — CEM auto-detects your package manager and adapts scaffolding, Docker, generated scripts, and CLI output.

Run without installing

bash
# npm
npx create-express-modular my-api

# yarn
yarn dlx create-express-modular my-api

# pnpm
pnpm dlx create-express-modular my-api

Install globally

bash
npm install -g create-express-modular
yarn global add create-express-modular
pnpm add -g create-express-modular

How detection works

CEM picks your package manager from these signals (highest priority first):

  • Lock file in the project root — pnpm-lock.yaml, yarn.lock, or package-lock.json.
  • npm_config_user_agent env var, automatically set when npm / yarn / pnpm invokes a script.
  • Defaults to npm.

What changes per PM

  • Install commands used during scaffolding
  • Generated README.md snippets
  • Dockerfile lock file + install command (corepack enabled for pnpm)
  • Update notices and inline tips in CLI output

Generated scripts

bash
# npm
npm run start:dev      # cem dev
npm run build          # cem build
npm start              # cem start
npm run check          # cem check

# yarn / pnpm
yarn start:dev   |  pnpm start:dev
yarn build       |  pnpm build
yarn start       |  pnpm start
yarn check       |  pnpm check