Home / File/ index.ts — astro Source File

index.ts — astro Source File

Architecture documentation for index.ts, a typescript file in the astro codebase. 28 imports, 0 dependents.

File typescript CoreAstro RenderingEngine 28 imports 7 functions

Entity Profile

Dependency Diagram

graph LR
  cd488d83_5ad0_f34a_227f_731e9945a152["index.ts"]
  e7f83aab_22c3_d7d9_eaa6_21922668ef38["../../assets/fonts/sync.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> e7f83aab_22c3_d7d9_eaa6_21922668ef38
  eb7ca709_080c_a438_b9d7_f1238835779d["../content/consts.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> eb7ca709_080c_a438_b9d7_f1238835779d
  b0d51698_8c9c_7a14_2fa8_0c688b058e22["../content/content-layer.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> b0d51698_8c9c_7a14_2fa8_0c688b058e22
  ca498ea5_adca_33b2_ab82_832064ec49f1["../../content/index.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> ca498ea5_adca_33b2_ab82_832064ec49f1
  f0d8d494_c471_39a6_5e1f_0ed356c4f6d8["../../content/mutable-data-store.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> f0d8d494_c471_39a6_5e1f_0ed356c4f6d8
  520c567a_b741_f105_70ac_c637eacc7f83["../content/utils.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> 520c567a_b741_f105_70ac_c637eacc7f83
  67b99df6_1966_2fa8_db87_d5dec8da47c0["../../env/sync.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> 67b99df6_1966_2fa8_db87_d5dec8da47c0
  e62808d9_0c55_b3a9_00c0_ce588f164dab["../events/index.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> e62808d9_0c55_b3a9_00c0_ce588f164dab
  e86f3c40_dd80_f866_50bb_4b859a344ece["../../events/session.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> e86f3c40_dd80_f866_50bb_4b859a344ece
  ec3f57f9_1334_b72b_abeb_11b186147ebe["../integrations/hooks.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> ec3f57f9_1334_b72b_abeb_11b186147ebe
  e9b74c5a_8d34_34a7_e196_5e41b87214aa["../types/astro.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> e9b74c5a_8d34_34a7_e196_5e41b87214aa
  c32d12e2_d85e_28c0_eea7_9b29629857e0["../types/public/config.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> c32d12e2_d85e_28c0_eea7_9b29629857e0
  c396bb1c_7eee_221a_d665_5744d13dc23f["../core/build/util.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> c396bb1c_7eee_221a_d665_5744d13dc23f
  0b371444_fc7b_922f_b8b5_b663fe1868ae["../config/config.js"]
  cd488d83_5ad0_f34a_227f_731e9945a152 --> 0b371444_fc7b_922f_b8b5_b663fe1868ae
  style cd488d83_5ad0_f34a_227f_731e9945a152 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import fsMod from 'node:fs';
import { dirname, relative } from 'node:path';
import { performance } from 'node:perf_hooks';
import { fileURLToPath } from 'node:url';
import colors from 'piccolore';
import { createServer, type FSWatcher, type HotPayload, type ViteDevServer } from 'vite';
import { syncFonts } from '../../assets/fonts/sync.js';
import { CONTENT_TYPES_FILE } from '../../content/consts.js';
import { getDataStoreFile, globalContentLayer } from '../../content/content-layer.js';
import { createContentTypesGenerator } from '../../content/index.js';
import { MutableDataStore } from '../../content/mutable-data-store.js';
import { getContentPaths, globalContentConfigObserver } from '../../content/utils.js';
import { syncAstroEnv } from '../../env/sync.js';
import { telemetry } from '../../events/index.js';
import { eventCliSession } from '../../events/session.js';
import { runHookConfigDone, runHookConfigSetup } from '../../integrations/hooks.js';
import type { AstroSettings } from '../../types/astro.js';
import type { AstroInlineConfig } from '../../types/public/config.js';
import { getTimeStat } from '../build/util.js';
import { resolveConfig } from '../config/config.js';
import { createNodeLogger } from '../config/logging.js';
import { createSettings } from '../config/settings.js';
import { createVite } from '../create-vite.js';
import {
	AstroError,
	AstroErrorData,
	AstroUserError,
	createSafeError,
	type ErrorWithMetadata,
	isAstroError,
} from '../errors/index.js';
import type { Logger } from '../logger/core.js';
import { createRoutesList } from '../routing/manifest/create.js';
import { ensureProcessNodeEnv } from '../util.js';
import { normalizePath } from '../viteUtils.js';

type SyncOptions = {
	mode: string;
	/**
	 * @internal only used for testing
	 */
	fs?: typeof fsMod;
	logger: Logger;
	settings: AstroSettings;
	force?: boolean;
	skip?: {
		// Must be skipped in dev
		content?: boolean;
		// Cleanup can be skipped in dev as some state can be reused on updates
		cleanup?: boolean;
	};
	command: 'build' | 'dev' | 'sync';
	watcher?: FSWatcher;
};

export default async function sync(
	inlineConfig: AstroInlineConfig,
	{ fs, telemetry: _telemetry = false }: { fs?: typeof fsMod; telemetry?: boolean } = {},
) {
	ensureProcessNodeEnv('production');
// ... (286 more lines)

Domain

Subdomains

Types

Dependencies

  • ../../assets/fonts/sync.js
  • ../../content/index.js
  • ../../content/mutable-data-store.js
  • ../../env/sync.js
  • ../../events/session.js
  • ../config/config.js
  • ../config/logging.js
  • ../config/settings.js
  • ../content/consts.js
  • ../content/content-layer.js
  • ../content/utils.js
  • ../core/build/util.js
  • ../core/errors/index.js
  • ../core/logger/core.js
  • ../core/routing/manifest/create.js
  • ../core/util.js
  • ../core/viteUtils.js
  • ../create-vite.js
  • ../events/index.js
  • ../integrations/hooks.js
  • ../types/astro.js
  • ../types/public/config.js
  • node:fs
  • node:path
  • node:perf_hooks
  • node:url
  • piccolore
  • vite

Frequently Asked Questions

What does index.ts do?
index.ts is a source file in the astro codebase, written in typescript. It belongs to the CoreAstro domain, RenderingEngine subdomain.
What functions are defined in index.ts?
index.ts defines 7 function(s): clearContentLayerCache, createTempViteServer, getTsReference, sync, syncContentCollections, syncInternal, writeInjectedTypes.
What does index.ts depend on?
index.ts imports 28 module(s): ../../assets/fonts/sync.js, ../../content/index.js, ../../content/mutable-data-store.js, ../../env/sync.js, ../../events/session.js, ../config/config.js, ../config/logging.js, ../config/settings.js, and 20 more.
Where is index.ts in the architecture?
index.ts is located at packages/astro/src/core/sync/index.ts (domain: CoreAstro, subdomain: RenderingEngine, directory: packages/astro/src/core/sync).

Analyze Your Own Codebase

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

Try Supermodel Free