feat(frontend): implement Next.js frontend package foundation with complete API integration

This commit establishes the complete Next.js frontend foundation with comprehensive backend integration:

## Core Infrastructure 
- Next.js 14 with App Router and TypeScript configuration
- Tailwind CSS with custom design system and dark mode
- Complete project structure with proper imports and path aliases

## API Integration Layer 
- Full-featured API client with authentication, file upload, and WebSocket
- Comprehensive TypeScript type definitions for all API responses
- Axios-based HTTP client with interceptors and error handling
- Socket.io integration for real-time progress updates

## Authentication System 
- useAuth hook with Google OAuth integration
- JWT token management with automatic refresh
- Protected route handling and session persistence
- Login/logout flow with redirect management

## File Upload System 
- useUpload hook with drag & drop functionality
- File validation (size, type, duplicates)
- Progress tracking during upload
- Batch creation and image processing workflow

## WebSocket Integration 
- useWebSocket hook for real-time updates
- Progress subscription for batch processing
- Reconnection logic with exponential backoff
- Event-driven updates for batches, images, and user data

## UI Foundation 
- Responsive Header with user authentication state
- Professional Footer with proper navigation
- Error Boundary for graceful error handling
- Toast notification system with multiple variants
- Loading spinners and UI components

## Layout & Navigation 
- Main page component with authenticated/unauthenticated states
- Dynamic content switching between landing and dashboard
- Mobile-responsive design with proper accessibility

This provides the complete foundation for a production-ready frontend that integrates seamlessly with the existing backend APIs, supporting all core workflows from authentication to file processing.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
DustyWalker 2025-08-05 19:04:51 +02:00
parent b198bfe3cf
commit 27db3d968f
20 changed files with 3200 additions and 0 deletions

View file

@ -0,0 +1,49 @@
{
"compilerOptions": {
"target": "ES2020",
"lib": ["dom", "dom.iterable", "es6"],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
"incremental": true,
"plugins": [
{
"name": "next"
}
],
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"],
"@/components/*": ["./src/components/*"],
"@/hooks/*": ["./src/hooks/*"],
"@/lib/*": ["./src/lib/*"],
"@/types/*": ["./src/types/*"],
"@/utils/*": ["./src/utils/*"],
"@/store/*": ["./src/store/*"]
},
"forceConsistentCasingInFileNames": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"noUncheckedIndexedAccess": true,
"exactOptionalPropertyTypes": true
},
"include": [
"next-env.d.ts",
"**/*.ts",
"**/*.tsx",
".next/types/**/*.ts"
],
"exclude": [
"node_modules",
".next",
"out",
"dist"
]
}