docs: add CLAUDE.md for Claude Code quick reference

Add project-specific context file for Claude Code with quick commands,
key files reference, project structure overview, and code patterns.
This commit is contained in:
Claude
2026-01-06 11:33:05 +00:00
parent 89a54248bc
commit 69f6e6548e

70
CLAUDE.md Normal file
View File

@@ -0,0 +1,70 @@
# CLAUDE.md
> Quick reference for Claude Code when working on prompts.chat
## Project Overview
**prompts.chat** is a social platform for AI prompts built with Next.js 16 App Router, React 19, TypeScript, and PostgreSQL/Prisma. It allows users to share, discover, and collect prompts.
For detailed agent guidelines, see [AGENTS.md](AGENTS.md).
## Quick Commands
```bash
# Development
npm run dev # Start dev server at localhost:3000
npm run build # Production build (runs prisma generate)
npm run lint # Run ESLint
# Database
npm run db:migrate # Run Prisma migrations
npm run db:push # Push schema changes
npm run db:studio # Open Prisma Studio
npm run db:seed # Seed database
# Type checking
npx tsc --noEmit # Check TypeScript types
```
## Key Files
| File | Purpose |
|------|---------|
| `prompts.config.ts` | Main app configuration (branding, theme, auth, features) |
| `prisma/schema.prisma` | Database schema |
| `src/lib/auth/index.ts` | NextAuth configuration |
| `src/lib/db.ts` | Prisma client singleton |
| `messages/*.json` | i18n translation files |
## Project Structure
```
src/
├── app/ # Next.js App Router pages
│ ├── (auth)/ # Login, register
│ ├── api/ # API routes
│ ├── prompts/ # Prompt CRUD pages
│ └── admin/ # Admin dashboard
├── components/ # React components
│ ├── ui/ # shadcn/ui base components
│ └── prompts/ # Prompt-related components
└── lib/ # Utilities and config
├── ai/ # OpenAI integration
├── auth/ # NextAuth setup
└── plugins/ # Auth and storage plugins
```
## Code Patterns
- **Server Components** by default, `"use client"` only when needed
- **Translations:** Use `useTranslations()` or `getTranslations()` from next-intl
- **Styling:** Tailwind CSS with `cn()` utility for conditional classes
- **Forms:** React Hook Form + Zod validation
- **Database:** Prisma client from `@/lib/db`
## Before Committing
1. Run `npm run lint` to check for issues
2. Add translations for any user-facing text
3. Use existing UI components from `src/components/ui/`
4. Never commit secrets (use `.env`)