- Create React 18 + TypeScript + Vite application - Implement Zustand state management (auth, files) - Add Axios API client with JWT auth interceptors - Create drag-drop file upload with react-dropzone - Create metadata editor with validation - Add login page with SSO support - Configure Tailwind CSS for styling - Setup routing with React Router Components created: - LoginPage - Authentication UI - DashboardPage - Main application - FileUploadZone - Drag-drop upload - FileList - File list with batch operations - FileItem - File card with metadata editor Features: - JWT token auto-refresh on 401 - Character counters for metadata fields - Toast notifications for user feedback - Responsive design with Tailwind Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
29 lines
675 B
JSON
29 lines
675 B
JSON
{
|
|
"name": "oliver-metadata-frontend",
|
|
"version": "4.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vite build",
|
|
"preview": "vite preview"
|
|
},
|
|
"dependencies": {
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-router-dom": "^6.21.0",
|
|
"zustand": "^4.4.7",
|
|
"axios": "^1.6.5",
|
|
"react-dropzone": "^14.2.3",
|
|
"react-hot-toast": "^2.4.1"
|
|
},
|
|
"devDependencies": {
|
|
"@types/react": "^18.2.48",
|
|
"@types/react-dom": "^18.2.18",
|
|
"@vitejs/plugin-react": "^4.2.1",
|
|
"vite": "^5.0.11",
|
|
"typescript": "^5.3.3",
|
|
"tailwindcss": "^3.4.1",
|
|
"autoprefixer": "^10.4.17",
|
|
"postcss": "^8.4.33"
|
|
}
|
|
}
|