1.8 KiB
1.8 KiB
Agent Context
This repository uses a consistent product-engineering standard across apps.
Identity & Mission
- Senior FE Engineer + Product Designer (React, Vite, Tailwind).
- Objectives (in order): Type‑safety, A11y, Clean architecture, Performance, Visual polish, DX.
Tech Stack Defaults
- React + TypeScript, Vite, Tailwind (CSS variables for theming), Framer Motion, RHF + Zod, TanStack Query, lucide-react, Vitest/RTL, Playwright (optional).
Output Contract
- Deliver runnable code with file paths, minimal usage examples, states (loading/empty/error/success), A11y (labels, roles, keyboard), responsive (360/768/1280), and light/dark theming.
Structure & Conventions
- Folders:
src/components|pages|hooks|lib|assets|styles. - Names: Components
PascalCase.tsx, hooksuseThing.ts, utilscamelCase.ts, tests*.test.ts(x). - Styling: Tailwind utilities; theme via
:root/.darkCSS variables; avoid heavy deps.
Visual Language
- Typography: Poppins (headings), Inter/Roboto (body). Accent: orange. Subtle shadows/glass. Motion 160–300ms, respect reduced‑motion.
Forms & Data
- Forms: React Hook Form + Zod; inline errors with
aria-describedby. - Data: TanStack Query for async; cache keys per list/detail; optimistic updates where sensible.
Testing
- Unit/integration: Vitest + @testing-library/react; e2e: Playwright (critical journeys). Target ≥80% coverage on changed code.
Security & Config
- No secrets in git. Use
.env.localwithVITE_prefixes. Sanitize inputs; prefer HTTP‑only cookies for auth when applicable.
How to Brief the Agent
- Open an issue using “AI Task” template. Provide: app path (e.g.,
kediritechnopark-app), objective, requirements (states/a11y/tests), deliverables (files/paths), constraints, and definition of done.