# Sascha Bach Portfolio Agent Guide This repository builds the public portfolio at https://sascha-bach.de. ## Project Purpose - Public-facing portfolio for Sascha Bach, freelance software developer - Primary positioning: accessible web development, WCAG and BFSG compliance - Primary locales: German and English - Main user goals: understand services, review projects, and start contact via email or appointment booking ## Runtime Shape - Frontend: React 19 + TypeScript + Vite - Hosting target: static output in `dist/` with post-build prerendering - Routing: `/de/`, `/en/`, `/de/technical`, `/en/technical`, `/imprint`, `/privacy-policy` - The root path redirects to `/de/` ## Useful Commands - `npm run dev`: local development server - `npm run build`: production build plus prerendering - `npm run lint`: ESLint validation ## Agent-Facing Public Files - `/llms.txt`: concise site summary for language models - `/llms-full.txt`: expanded site and conversion guidance - `/AGENTS.md`: deployed guide for browsing agents - `/.well-known/agents.json`: agent index - `/.well-known/agent-card.json`: A2A-style agent card - `/.well-known/webmcp.json`: declarative website interaction hints - `/.well-known/mcp.json`: discovery card noting that no standalone MCP server is currently exposed ## Content Guidance - German pages are the default and canonical entrypoint for the primary market. - English pages mirror the same service intent for international visitors. - Legal pages are informational and shared across languages. - The site is informational. It does not expose a public authenticated user workflow. - Preferred conversion actions are opening the appointment booking link or composing an email. ## Source Anchors - Shared SEO and metadata live in `index.html` and `src/hooks/usePageSeo.ts`. - Route composition lives in `src/app/AppRouter.tsx`. - Personal business/contact data lives in `src/config/personal.ts`. - Public crawl and discovery assets live in `public/`.