Files
supabase/apps/kb

Astro Starter Kit: Basics

npm create astro@latest -- --template basics

🧑‍🚀 Seasoned astronaut? Delete this file. Have fun!

🚀 Project Structure

Inside of your Astro project, you'll see the following folders and files:

/
├── public/
│   └── favicon.svg
├── src
│   ├── assets
│   │   └── astro.svg
│   ├── components
│   │   └── Welcome.astro
│   ├── layouts
│   │   └── Layout.astro
│   └── pages
│       └── index.astro
└── package.json

To learn more about the folder structure of an Astro project, refer to our guide on project structure.

🧞 Commands

All commands are run from the root of the project, from a terminal:

Command Action
npm install Installs dependencies
npm run dev Starts local dev server at localhost:4321
npm run build Build your production site to ./dist/
npm run preview Preview your build locally, before deploying
npm run astro ... Run CLI commands like astro add, astro check
npm run astro -- --help Get help using the Astro CLI

👀 Want to learn more?

Feel free to check our documentation or jump into our Discord server.

Federated troubleshooting content

src/content/troubleshooting/ isn't hand-written — it's fetched from a private repo by scripts/federated-content/fetch-federated-content.ts as part of the build (pnpm run fetch:federated-content) and is gitignored. See AGENTS.md for how it works and what's intentionally left out for now.

Workflows

.github/workflows/kb-troubleshooting-sync.yml runs on every push to master: it fetches troubleshooting content, creates a GitHub Discussion for any guide that doesn't have one yet (sync:troubleshooting-entries), and pushes title/content updates to discussions whose guide has since changed (sync:troubleshooting-updates). This is separate from kb's own build — it has real side effects (creating/updating Discussions, writing DB rows), so it never runs as part of pnpm build/prebuild.