diff --git a/.changeset/warm-days-wash.md b/.changeset/warm-days-wash.md new file mode 100644 index 000000000000..1786fa814a0f --- /dev/null +++ b/.changeset/warm-days-wash.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fix: astro add generating "astro.config.mjs" outside project root diff --git a/packages/astro/src/core/add/index.ts b/packages/astro/src/core/add/index.ts index 5de4cf2c26c3..5dd6b5caaa27 100644 --- a/packages/astro/src/core/add/index.ts +++ b/packages/astro/src/core/add/index.ts @@ -19,6 +19,7 @@ import { parseNpmName } from '../util.js'; import { wrapDefaultExport } from './wrapper.js'; import { ensureImport } from './imports.js'; import { t, parse, visit, generate } from './babel.js'; +import { appendForwardSlash } from '../path.js'; export interface AddOptions { logging: LogOptions; @@ -91,7 +92,7 @@ export default async function add(names: string[], { cwd, flags, logging }: AddO debug('add', `Found config at ${configURL}`); } else { info(logging, 'add', `Unable to locate a config file, generating one for you.`); - configURL = new URL('./astro.config.mjs', root); + configURL = new URL('./astro.config.mjs', appendForwardSlash(root.href)); await fs.writeFile(fileURLToPath(configURL), CONSTS.CONFIG_STUB, { encoding: 'utf-8' }); }