Arnaud
073170c96a
fix: lazy-initialize VAPID to avoid build-time crash when env vars absent
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-07-01 13:05:51 +02:00
Arnaud
5ab2acc711
Fix TypeScript errors blocking Docker build
...
- Fix Authentik button type casting issue in login page
* Use exported signIn instead of authClient type assertion
* Add proper error handling for OAuth calls
- Fix image MIME type handling in import-photo.ts
* Convert base64 to data URL format for AI SDK compatibility
- Fix type annotations in auth/server.ts changeEmail handler
* Add explicit type annotation for destructured parameters
These TypeScript errors were preventing 'pnpm build' from completing
during Docker image build process.
2026-07-01 11:29:41 +02:00
Arnaud
8b57a3fd87
Update features and dependencies
2026-07-01 11:10:37 +02:00
Arnaud
9d9dfb46c6
feat: misc — cooking mode, OpenAPI docs, email, storage, upload, homepage
...
Cooking mode step-by-step view. OpenAPI 3.1 spec auto-generated from Zod schemas.
Email lib (resend). Redis client. S3 storage helper. Photo upload endpoint.
Landing page. Short recipe URL redirect /r/[id]. API docs page.
2026-07-01 08:11:31 +02:00
Arnaud
3f96d1ea41
feat(webhooks): outbound webhooks with HMAC-SHA256 signing and API key auth
...
Webhook registration/management. HMAC-signed delivery with retry.
Events: recipe.created/updated, comment.created, follower.new.
REST API key creation for programmatic access.
2026-07-01 08:11:19 +02:00
Arnaud
d6032edc00
feat(pwa): service worker, offline page, web push notifications
...
PWA manifest, sw.js with offline cache. VAPID web-push via lib/push.ts.
Push subscribe button (client). Push fired on recipe comment creation.
VAPID keys configurable via admin site settings.
2026-07-01 08:11:05 +02:00
Arnaud
d9d58fd01a
feat(ai): Vercel AI SDK provider factory with BYOK and per-use-case model prefs
...
Provider factory (OpenAI/Anthropic/OpenRouter/Ollama). generateObject for all outputs.
Features: recipe generation, photo-to-recipe vision, variations, drink/meal pairings,
ingredient substitution, recipe adaptation, nutrition analysis, URL import, meal plan gen.
User BYOK keys (AES-256-GCM). Per-use-case model preferences (text/vision/mealPlan).
Site-level key override via admin settings.
2026-07-01 08:10:19 +02:00
Arnaud
5b40968c9d
feat(web): Next.js 15 app shell, auth, i18n, base UI
...
App Router setup with next-intl (en/fr), Better Auth wiring, shadcn/ui components,
Tailwind, AES-256-GCM encrypt util, Redis rate limiter, tier limit checker,
site_settings helper for runtime .env overrides.
2026-07-01 08:09:31 +02:00