···11+# Repository Agent Guidelines
22+33+This repository follows coding and collaboration conventions summarized from `.cursorrules`.
44+55+## General Principles
66+77+- Implement requests thoroughly and follow requirements precisely.
88+- Think through solutions step by step before writing code.
99+- Produce clean, fully functional code aligned with best practices.
1010+- Prioritize readability over performance and avoid duplication.
1111+- Include all necessary imports and use clear, descriptive names.
1212+- Remove placeholders or incomplete sections before committing.
1313+1414+## Tech Stack
1515+1616+- React and Vite with TypeScript
1717+- HeadlessUI, Tailwind CSS, Radix
1818+- Apollo GraphQL, Hono
1919+- Prisma with Postgres
2020+- Zustand, TanStack React Query
2121+- Zod for validation
2222+- Prosekit with Remark and Rehype
2323+2424+## Implementation Guidelines
2525+2626+- Use early returns and guard clauses.
2727+- Always export default React components at the end of each file.
2828+- Style elements with Tailwind classes only.
2929+- Name event handlers with a `handle` prefix (e.g., `handleClick`).
3030+- Add accessibility attributes such as `tabIndex`, `aria-label`, and keyboard handlers.
3131+- Prefer arrow functions and define types or interfaces for props.
3232+- Place files in pnpm workspaces and keep packages isolated.
3333+- Handle errors early with custom error types when appropriate.
3434+- Favor derived state and memoization instead of excessive `useEffect`.
3535+- Use interfaces for props and avoid enums, preferring literal types.
3636+- Follow camelCase naming and use verbs for boolean flags.
3737+- Organize exports, subcomponents, helpers, static content, and types within files.
3838+3939+## References
4040+4141+- [Lens Protocol Docs](https://lens.xyz/docs/protocol)
4242+- [Grove Storage Docs](https://lens.xyz/docs/storage)