Home / Function/ getRegistry() — astro Function Reference

getRegistry() — astro Function Reference

Architecture documentation for the getRegistry() function in install-package.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  d2af8925_8fc5_eccf_dd65_3fc6954dc796["getRegistry()"]
  ba36b72c_5f3d_f082_9365_52233650426e["install-package.ts"]
  d2af8925_8fc5_eccf_dd65_3fc6954dc796 -->|defined in| ba36b72c_5f3d_f082_9365_52233650426e
  fbdc2b06_d05f_7d9c_fcb7_091ac19ea01d["fetchPackageJson()"]
  fbdc2b06_d05f_7d9c_fcb7_091ac19ea01d -->|calls| d2af8925_8fc5_eccf_dd65_3fc6954dc796
  9ed452f5_f41a_0501_14f9_7f6cb61914a3["fetchPackageVersions()"]
  9ed452f5_f41a_0501_14f9_7f6cb61914a3 -->|calls| d2af8925_8fc5_eccf_dd65_3fc6954dc796
  style d2af8925_8fc5_eccf_dd65_3fc6954dc796 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/cli/install-package.ts lines 167–180

async function getRegistry(): Promise<string> {
	if (_registry) return _registry;
	const fallback = 'https://registry.npmjs.org';
	const packageManager = (await detect())?.name || 'npm';
	try {
		const { stdout } = await exec(packageManager, ['config', 'get', 'registry']);
		_registry = stdout.trim()?.replace(/\/$/, '') || fallback;
		// Detect cases where the shell command returned a non-URL (e.g. a warning)
		if (!new URL(_registry).host) _registry = fallback;
	} catch {
		_registry = fallback;
	}
	return _registry;
}

Domain

Subdomains

Frequently Asked Questions

What does getRegistry() do?
getRegistry() is a function in the astro codebase, defined in packages/astro/src/cli/install-package.ts.
Where is getRegistry() defined?
getRegistry() is defined in packages/astro/src/cli/install-package.ts at line 167.
What calls getRegistry()?
getRegistry() is called by 2 function(s): fetchPackageJson, fetchPackageVersions.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free