Commit graph

12 commits

Author SHA1 Message Date
SamoilenkoVadym
1bac1b6994 feat(config): commit .env files to git for deployment
- Remove .env from .gitignore
- Add backend/.env with all configuration
- Add frontend/.env with Vite variables
- Match APAC Ops Bot pattern

Environment files now tracked in git for easier deployment.
Update SECRET_KEY, OPENAI_API_KEY, AZURE_CLIENT_SECRET on server.

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 15:17:26 +00:00
SamoilenkoVadym
917d1ed9f0 fix(frontend): correct API URL with full path
- Change VITE_API_URL from /api to /solventum-image-metadata/api
- Matches Apache ProxyPass configuration
- Fixes 404 errors on API calls

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:58:58 +00:00
SamoilenkoVadym
0afd7a628e fix(frontend): add complete .env with Azure AD configuration
- Add VITE_AZURE_* variables for SSO
- Use relative /api URL for Apache proxy
- Match APAC Ops Bot env pattern
- Production and development configs

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:36:05 +00:00
SamoilenkoVadym
b03ff91e4e docs(deploy): add complete deployment checklist and env files
- Add DEPLOYMENT-CHECKLIST.md with step-by-step guide
- Add frontend/.env.production for build
- Update .env.fastapi.example with correct REDIRECT_URI
- Include all verification steps and troubleshooting

Ready for production deployment!

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:29:45 +00:00
SamoilenkoVadym
3585aaff0b fix(sso): add OAuth callback handler with correct redirect URI
- Update .env: REDIRECT_URI without /api/ prefix
- Add OAuth handler in App.tsx for SSO callback
- Add basename to BrowserRouter: /solventum-image-metadata
- Add .env.production for server deployment

Matches Azure AD config:
  https://ai-sandbox.oliver.solutions/solventum-image-metadata/

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:28:07 +00:00
SamoilenkoVadym
ea914dcf69 feat(frontend): add Microsoft SSO button to login page
- Add prominent "Login with Microsoft" button
- Match original Flask design with Microsoft icon
- Add divider between SSO and local login
- Update styling to match gold theme

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:19:09 +00:00
SamoilenkoVadym
16aa4f6b49 style(frontend): match Flask design with gold gradients and glass morphism
- Add Montserrat font from Google Fonts
- Use original color scheme (gold #FFC407, dark gradients)
- Add glass morphism effect with backdrop blur
- Add shimmer animation on header
- Style upload zone with hover/drag states
- Match all original design elements from Flask version

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:15:23 +00:00
SamoilenkoVadym
901d4d9a21 feat(frontend): complete metadata editor with all fields and sources
- Add all metadata sources: manual, AI, Excel, import, template
- Add all metadata fields: title, subject, keywords, author, copyright, comments
- Add custom fields editor with add/remove functionality
- Add character counters for all fields
- Add import file upload with session handling
- Add template selection dropdown
- Add common components: Modal, Button, Input

Full feature parity with Flask version achieved.

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 14:04:10 +00:00
SamoilenkoVadym
24e57f2d99 feat(frontend): add file components (missing from previous commit)
- FileUploadZone: Drag-drop with metadata source selector
- FileList: Batch operations (select, download, process more)
- FileItem: File card with expandable metadata editor

These were created but not committed previously.

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 13:49:51 +00:00
SamoilenkoVadym
227472ca02 fix(frontend): add .tsx extensions to component imports
- Fix Vite build error for component resolution
- Add explicit .tsx extensions to imports

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 13:44:25 +00:00
SamoilenkoVadym
3dd0149235 chore(frontend): add package-lock.json for reproducible builds
- Generate package-lock.json with npm install
- Required for npm ci in deployment script
- Ensures consistent dependency versions

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-09 13:40:31 +00:00
SamoilenkoVadym
4eaeaf998f feat(frontend): add React SPA with TypeScript
- 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>
2026-02-09 13:14:46 +00:00