- Migrate from Vite to Next.js 15 for server-side API support
- Add dynamic API route at /api/filaments that fetches from Confluence
- Implement security measures:
- API credentials only accessible server-side
- Security scan script to detect credential leaks
- Tests to ensure no sensitive data exposure
- Build-time security checks in CI/CD
- Update AWS Amplify configuration for Next.js deployment
- Update Terraform to use WEB_COMPUTE platform for Next.js
- Add Jest tests for API security
- Remove static JSON approach in favor of dynamic API
This provides real-time data updates while keeping credentials secure on the server.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add build-time data fetching from Confluence
- Create build-data.js script to fetch and save data at build time
- Update App.tsx to use static JSON in production, API in development
- Install tsx for running TypeScript build scripts
- Configure Amplify to fetch data during build process
- Add public directory configuration to Vite
This fixes the white page error by providing data at build time instead of runtime.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Delete src/pages/api/filaments.ts that was causing build failure
- Add .vite/ to gitignore
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove unused Express server (server.js)
- Remove unused API route (src/pages/api/filaments.ts)
- Remove Express dependency and related scripts from package.json
- Import existing AWS domain association into Terraform
- Add domain configuration to terraform.tfvars
- Update domain association to include www and dev subdomains
- Set wait_for_verification to false to avoid timeouts
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed client-side environment variable usage to fix browser errors
- Added support for 'kolicina' (without diacritic) as alternative spelling
- Added debug logging for column parsing
- Simplified API endpoint for production deployment
- Fixed Confluence API authentication using Basic auth with email
- Added /wiki path to API URL for proper endpoint
- Improved HTML parsing with cheerio for better table extraction
- Made all table columns sortable (previously only 4 were clickable)
- Removed fallback to mock data - now always uses real Confluence data
- Only color Boja column instead of entire rows for cleaner look
- Added proper error handling and logging
- Translated all UI text to Serbian
- Added dark mode toggle with system preference support
- Fixed text contrast on colored table rows
- Added dark mode styles throughout the app
- React + TypeScript frontend with automatic color coding
- Confluence API integration for data sync
- AWS Amplify deployment with Terraform
- Support for all Bambu Lab filament colors including gradients