Home / Function/ fetchPackageJson() — astro Function Reference

fetchPackageJson() — astro Function Reference

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

Entity Profile

Dependency Diagram

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

Relationship Graph

Source Code

packages/astro/src/cli/install-package.ts lines 129–145

export async function fetchPackageJson(
	scope: string | undefined,
	name: string,
	tag: string,
): Promise<Record<string, any> | Error> {
	const packageName = `${scope ? `${scope}/` : ''}${name}`;
	const registry = await getRegistry();
	const res = await fetch(`${registry}/${packageName}/${tag}`);
	if (res.status >= 200 && res.status < 300) {
		return await res.json();
	} else if (res.status === 404) {
		// 404 means the package doesn't exist, so we don't need an error message here
		return new Error();
	} else {
		return new Error(`Failed to fetch ${registry}/${packageName}/${tag} - GET ${res.status}`);
	}
}

Domain

Subdomains

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free