my-site/ Pick any file or folder on the left to see what it is, why it exists, when you add it and the mistakes people make with it. Switch the stage to watch the project grow.
Top level, at Growing .husky Git hooks managed by husky, created by `npx husky init`. .vscode Shared VS Code settings from the template. .astro Types and the content data store that Astro generates. dist Build output from `astro build`. node_modules Installed packages. coverage Coverage reports from `vitest run --coverage`. docs Project documentation that is too long for the README. public Files copied to the build output exactly as they are. scripts Small Node scripts for content and maintenance work. src All source code and content that Astro processes. tests Unit, component and browser tests. .env Local secrets and settings: DATABASE_URL, email API key. .env.example Every variable the site needs, with safe sample values. .gitignore Ignores dist, .astro, node_modules, logs and .env files. .nvmrc The Node version for this project, for example 24. .prettierrc.mjs Prettier config with prettier-plugin-astro. AGENTS.md Instructions for AI coding agents, written by create-astro. CLAUDE.md A symlink to AGENTS.md so Claude Code reads the same instructions. README.md How to run, build and contribute to the site. astro.config.mjs Astro configuration: site URL, integrations, adapter, fonts, env schema, CSP. commitlint.config.js Enforces Conventional Commit messages. drizzle SQL migrations generated by drizzle-kit. drizzle.config.ts drizzle-kit settings: schema path, migrations folder, database URL. eslint.config.js ESLint flat config with eslint-plugin-astro and TypeScript rules. package-lock.json Exact versions of every installed package. package.json Dependencies, the Node engine range and the scripts: dev, build, preview, astro. tsconfig.json TypeScript settings: extends astro/tsconfigs/strict and includes the generated .astro types. vitest.config.ts Vitest config built with `getViteConfig()` from astro/config.