feat: 支持多语言能力
This commit is contained in:
52
CLAUDE.md
Normal file
52
CLAUDE.md
Normal file
@@ -0,0 +1,52 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
|
||||
## Commands
|
||||
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `npm run dev` | Start dev server with Turbopack |
|
||||
| `npm run build` | Production build |
|
||||
| `npm run start` | Run production server |
|
||||
| `npm run lint` | ESLint check |
|
||||
| `npm run type-check` | TypeScript type checking without emit |
|
||||
| `npm run format` | Format code with Prettier |
|
||||
|
||||
## Architecture
|
||||
|
||||
### Tech Stack
|
||||
- **Framework**: Next.js 15 with App Router, React 19
|
||||
- **State**: Zustand for client state
|
||||
- **Styling**: Tailwind CSS with HSL CSS variables (dark mode by default)
|
||||
- **UI Components**: Custom components built on Radix UI primitives
|
||||
- **Animations**: Framer Motion
|
||||
- **Form Validation**: Zod
|
||||
- **Media Processing**: Sharp (images), FFmpeg (video/audio)
|
||||
|
||||
### Route Groups
|
||||
- `(auth)` - Authentication routes (login, register)
|
||||
- `(dashboard)` - Dashboard routes with shared Sidebar layout
|
||||
|
||||
### Tool Pages Pattern
|
||||
Each tool (image-compress, video-frames, audio-compress) follows a consistent pattern:
|
||||
1. `FileUploader` - Drag-drop file input using react-dropzone
|
||||
2. `ConfigPanel` - Tool-specific configuration options
|
||||
3. `ProgressBar` - Processing status indicator
|
||||
4. `ResultPreview` - Display processed files
|
||||
5. State managed via `useUploadStore` Zustand store
|
||||
|
||||
### State Management
|
||||
- `store/uploadStore.ts` - File list, processing status, progress tracking
|
||||
- `store/authStore.ts` - User authentication state
|
||||
|
||||
### Styling Convention
|
||||
Use `cn()` utility from `lib/utils.ts` for Tailwind class merging. Theme colors are CSS variables in `app/globals.css` accessed via HSL: `hsl(var(--primary))`.
|
||||
|
||||
### Type Definitions
|
||||
All shared types in `types/index.ts` including file types, processing configs, API responses.
|
||||
|
||||
### Development Phases
|
||||
- Current (Phase 1-4): Basic tools with mock API implementations
|
||||
- Phase 5: AI services integration (Replicate, OpenAI)
|
||||
- Phase 6: Authentication, database (PostgreSQL), payment processing (Stripe), cloud storage (Cloudflare R2)
|
||||
Reference in New Issue
Block a user