# AGENTS.md ## Project Overview **gres-tech.com** — Official website for Gres-Tech, a professional tiling and glazing services company based in Rokitki, Poland. Static site built with Astro 5 and Tailwind CSS, hosted on statichost.eu. ## Commands | Command | Description | |----------------------|--------------------------------------| | `npm run dev` | Start dev server (localhost:4321) | | `npm run build` | Build for production to `dist/` | | `npm run preview` | Preview production build | | `npm run check` | Run all checks (astro, eslint, prettier) | | `npm run check:astro`| Type-check Astro files | | `npm run check:eslint`| Lint with ESLint | | `npm run check:prettier`| Check formatting with Prettier | | `npm run fix` | Auto-fix eslint + prettier | | `npm run fix:eslint` | Auto-fix ESLint issues | | `npm run fix:prettier`| Auto-fix formatting | ## Architecture ``` src/ ├── assets/ # Images, styles ├── components/ │ ├── blog/ # Blog-related components │ ├── common/ # Header, footer, shared components │ ├── ui/ # Base UI components │ ├── widgets/ # Page section widgets │ ├── CustomStyles.astro │ ├── Favicons.astro │ └── Logo.astro ├── config.yaml # Site-wide configuration (metadata, i18n, etc.) ├── content/ # Content collections ├── layouts/ │ ├── Layout.astro # Base layout │ ├── PageLayout.astro # Standard page layout │ ├── LandingLayout.astro # Landing page layout │ └── MarkdownLayout.astro # Markdown content layout ├── navigation.ts # Navigation structure ├── pages/ │ ├── index.astro # Homepage │ ├── 404.astro # 404 page │ └── polityka-prywatnosci.md # Privacy policy (Polish) ├── utils/ # Utility functions (frontmatter plugins, etc.) ├── env.d.ts └── types.d.ts ``` **Key integrations** (astro.config.ts): - `@astrojs/tailwind` — Styling - `@astrojs/sitemap` — SEO sitemap generation - `@astrojs/mdx` — MDX support - `astro-icon` — Icon system (tabler + flat-color-icons) - `astro-compress` — HTML/CSS/JS compression - `vendor/integration` (astrowind) — Custom integration loading config.yaml **Path alias**: `~` resolves to `src/` ## Conventions - **Language**: Website content is in Polish. Code/config in English. - **Styling**: Tailwind CSS utility classes. Custom styles in `CustomStyles.astro`. - **Pages**: Astro components (`.astro`) or Markdown (`.md`). Privacy policy uses Markdown with `MarkdownLayout.astro`. - **Config**: Site metadata, contact info, and i18n settings live in `src/config.yaml`. - **Output**: Static site (`output: 'static'`), built to `dist/`. - **Images**: Optimized via Astro's built-in image processing (sharp). No compression via astro-compress for images. ## Commit Rules **IMPORTANT:** Before completing any task, you MUST run `/commit` to commit your changes. - Only commit files YOU modified in this session — never commit unrelated changes - Use atomic commits with descriptive messages - If there are no changes to commit, skip this step - Do not push unless explicitly asked