Files
55bb927b51 feat: add flags support in create-fumadocs-app (#2079)
* feat: add flags support in create-fumadocs-app

* fix: lock file

---------

Co-authored-by: Fuma Nama <[email protected]>
2025-07-15 15:56:23 +08:00

38 lines
773 B
TypeScript

import { x } from 'tinyexec';
export type PackageManager = (typeof managers)[number];
export const managers = ['npm', 'yarn', 'bun', 'pnpm'] as const;
export function getPackageManager(): PackageManager {
const userAgent = process.env.npm_config_user_agent ?? '';
if (userAgent.startsWith('yarn')) {
return 'yarn';
}
if (userAgent.startsWith('pnpm')) {
return 'pnpm';
}
if (userAgent.startsWith('bun')) {
return 'bun';
}
return 'npm';
}
export async function autoInstall(manager: PackageManager, dest: string) {
await x(manager, ['install'], {
throwOnError: true,
nodeOptions: {
env: {
...process.env,
NODE_ENV: 'development',
DISABLE_OPENCOLLECTIVE: '1',
},
cwd: dest,
},
});
}