feat: Add AI provider settings and update UI layout

- Add `Setting` model to Prisma schema for storing API keys and model configs.
- Implement `SettingService` and API for managing application settings.
- Refactor `src/service/ai.ts` to `UnifiedAIService` supporting dynamic OpenAI and Google provider selection.
- Add Settings page (`src/ui/pages/Settings.tsx`) to configure providers and default models.
- Update `AppSidebar` to include Settings, use text-under-icon style, and increase icon size.
- Update `Layout` to move "Forgery" title to header and add GitHub link.
- Add unit tests for `SettingService` and `UnifiedAIService`.
This commit is contained in:
google-labs-jules[bot] committed 2026-02-09 14:28:31 +00:00
1 parent 61da94c5c9
commit ee4ab2d9d1
27 files changed
+11747 -52

No files matched your search

+3
View File
@@ -30,11 +30,14 @@
"framer-motion": "^12.33.0",
"hono": "^4.11.8",
"lucide-react": "^0.563.0",
"next-themes": "^0.4.6",
"openai": "^6.18.0",
"radix-ui": "^1.4.3",
"react": "^19.2.4",
"react-dom": "^19.2.4",
"react-router-dom": "^7.13.0",
"sharp": "^0.34.5",
"sonner": "^2.0.7",
"tailwind-merge": "^3.4.0",
"tailwindcss": "^4.1.18",
"tw-animate-css": "^1.4.0",