docs: update CLAUDE.md indexes and README for OCR expansion (refs #137)
Add/update documentation across backend, Python OCR service, and frontend for receipt scanning, manual extraction, and Gemini integration. Create new CLAUDE.md files for engines/, fuel-logs/, documents/, and maintenance/ features. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
49
frontend/src/features/documents/CLAUDE.md
Normal file
49
frontend/src/features/documents/CLAUDE.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# documents/
|
||||
|
||||
Document management UI with maintenance manual extraction. Handles file uploads, document viewing, and PDF-based maintenance schedule extraction via Gemini.
|
||||
|
||||
## Subdirectories
|
||||
|
||||
| Directory | What | When to read |
|
||||
| --------- | ---- | ------------ |
|
||||
| `api/` | Document API endpoints | API integration |
|
||||
| `components/` | Document forms, dialogs, preview, metadata display | UI changes |
|
||||
| `hooks/` | Document CRUD, manual extraction, upload progress | Business logic |
|
||||
| `mobile/` | Mobile-specific document layout | Mobile UI |
|
||||
| `pages/` | DocumentsPage, DocumentDetailPage | Page layout |
|
||||
| `types/` | TypeScript type definitions | Type changes |
|
||||
| `utils/` | Utility functions (vehicle label formatting) | Helper logic |
|
||||
|
||||
## Key Files
|
||||
|
||||
| File | What | When to read |
|
||||
| ---- | ---- | ------------ |
|
||||
| `hooks/useManualExtraction.ts` | Manual extraction orchestration: submit PDF to /ocr/extract/manual, poll job status via /ocr/jobs/:jobId, return extraction results | Manual extraction flow, job polling |
|
||||
| `components/DocumentForm.tsx` | Document metadata form with "Scan for Maintenance Schedule" checkbox (Pro tier) | Document upload, extraction trigger |
|
||||
| `components/AddDocumentDialog.tsx` | Add document dialog integrating DocumentForm, upload progress, and manual extraction trigger | Document creation flow |
|
||||
| `hooks/useDocuments.ts` | CRUD operations for documents | Document data management |
|
||||
| `hooks/useUploadWithProgress.ts` | File upload with progress tracking | Upload UI |
|
||||
| `components/DocumentPreview.tsx` | Document viewer/preview | Document display |
|
||||
| `components/EditDocumentDialog.tsx` | Edit document metadata | Document editing |
|
||||
| `types/documents.types.ts` | DocumentType, DocumentRecord, CreateDocumentRequest | Type definitions |
|
||||
|
||||
## Manual Extraction Flow
|
||||
|
||||
```
|
||||
DocumentForm ("Scan for Maintenance Schedule" checkbox, Pro tier)
|
||||
|
|
||||
v
|
||||
AddDocumentDialog -> useManualExtraction.submit(file, vehicleId)
|
||||
|
|
||||
v
|
||||
POST /api/ocr/extract/manual (async job)
|
||||
|
|
||||
v
|
||||
Poll GET /api/ocr/jobs/:jobId (progress: 10% -> 50% -> 95% -> 100%)
|
||||
|
|
||||
v
|
||||
Job completed -> MaintenanceScheduleReviewScreen (in maintenance/ feature)
|
||||
|
|
||||
v
|
||||
User selects/edits items -> Batch create maintenance schedules
|
||||
```
|
||||
Reference in New Issue
Block a user