- Replace next-themes (38 KiB) with a tiny custom ThemeProvider (~< 1 KiB)
using localStorage + classList.toggle for theme management
- Add FOUC-prevention inline script in layout.tsx to apply saved theme
before React hydrates
- Remove framer-motion from Header.tsx: nav entry now uses CSS slideDown
keyframe, mobile menu uses CSS opacity/translate transitions
- Remove framer-motion from ThemeToggle.tsx: use Tailwind hover/active scale
- Remove framer-motion from legal-notice and privacy-policy pages
- Update useTheme import in ThemeToggle to use custom ThemeProvider
- Add slideDown keyframe to tailwind.config.ts
- Update tests to mock custom ThemeProvider instead of next-themes
Result: framer-motion moves from "First Load JS shared by all" to lazy
chunks; next-themes chunk eliminated entirely; -38 KiB from initial bundle
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* update
* cleanup
* fixing linting and tests errors
* Refactor API Parameter Handling and Update Email Transport
✅ Updated API Route Parameters:
- Changed parameter type from `{ id: string }` to `Promise<{ id: string }>` in PUT and DELETE methods for better async handling.
✅ Fixed Email Transport Creation:
- Updated `nodemailer.createTransporter` to `nodemailer.createTransport` for correct transport configuration.
✅ Refactored AnalyticsDashboard Component:
- Changed export from default to named export for better modularity.
✅ Enhanced Email Responder Toast:
- Updated toast structure to include additional properties for better user feedback.
🎯 Overall Improvements:
- Improved async handling in API routes.
- Ensured correct usage of nodemailer.
- Enhanced component exports and user notifications.
* ✨ chore: update CI workflow to include testing and multi-arch build (#29)
* ✨ chore: remove unused dependencies from package-lock.json and updated to a better local dev environment (#30)
* ✨ test: add unit tests
* ✨ test: add unit tests for whole project
* ✨ feat: add whatwg-fetch for improved fetch support
* ✨ chore: update Node.js version to 22 in workflow
* ✨ refactor: update types and improve email handling tests
* ✨ refactor: remove unused imports
* ✨ fix: normalize image name to lowercase in workflows
* ✨ fix: ensure Docker image names are consistently lowercase
* ✨ chore: update
* ✨ chore: update base URL to use secret variable
* ✨ chore: update to login to ghcr
* ✨ fix: add missing 'fi' to close if statement in workflow