diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 000000000..21cf1fbf6 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,464 @@ +# EuroPython 2026 Website — Agent Context + +> **Ask if unsure. Suggest improvements. Never introduce random colors or +> fonts.** + +The official **EuroPython 2026** conference website (`ep2026.europython.eu`), +built with **Astro 6** + **pnpm** + **Tailwind CSS v4** + **Svelte 5**. + +**Worktree**: `/home/user/workspace/EuroPython/ep2026-ai` — branch `ep2026-ai`, +forked from the main repo at `/home/user/workspace/EuroPython/website/`. + +--- + +## Quick Start + +```bash +make install # install deps (pnpm 9.3) +make dev # dev server → http://localhost:4321 +make build # full build + type-check + pagefind +pnpm format # Prettier (prettier-plugin-astro) +pnpm astro check # TypeScript validation only +``` + +--- + +## 🚨 DO / DON'T + +### DO ✅ + +**Content & pages** + +- **DO** create new pages as `.md` files — MDX is deprecated, migrate existing + `.mdx` when touched +- **DO** create pages as either `src/content/pages/page-name.md` or + `src/content/pages/page-name/index.md` +- **DO** prefix hidden/internal pages with underscore: `_draft.md`, + `_private-section/` + +**Architecture** + +- **DO** split Astro pages into **page → sections → components** (see "Page + Architecture" below) +- **DO** keep pages thin — they should only set layout, fetch data, and compose + sections +- **DO** create page-block components in `src/components/sections/` +- **DO** create reusable UI primitives in `src/components/ui/` + +**Styling** + +- **DO** use Tailwind utility classes from the existing `@theme` tokens in + `src/styles/tailwind.css` +- **DO** use `