name: pattern-mapper description: Codebase File Index – Backend-App-Pfade, Frontend-Routen, ARI/SAM usage hints
Pattern Mapper – Codebase File Index
Auto-generated via pre-push hook
regen-pattern-mapperLast updated: 2026-06-25 08:20 UTC+02:00 ARI: relevante Pfade ins Ticket alsMUST read: <path>SAM: Datei lesen bevor implementiert wird FE routes: zentrale Quelle istfrontend/src/router.tsx
ARI usage hints
- Backend endpoint tickets: zuerst Router, Schemas, Services und betroffene Tests ableiten.
- Frontend route tickets: zuerst zentrale Route, Ziel-Page und verwendetes Layout lesen.
- Fullstack tickets: Backend- und Frontend-Blöcke gemeinsam auswerten.
SEMANTISCHE SUCHE (Vector DB)
MUST: Bei Architektur-, Muster- oder Strukturfragen IMMER semantic_search nutzen:
semantic_searchdurchsucht die gesamte Codebase semantisch (LanceDB + OpenAI Embeddings)- Liefert kontextrelevante Snippets, nicht nur Text-Matching
- Besser als
grep/readfür: "Wie ist X gelöst?", "Welche Patterns gibt es?", "Wo kommt Y vor?" - Ergebnisse mit Scores – hoher Score = hohe Relevanz
Beispiel-Aufrufe:
semantic_search("frontend architecture layers boundaries")
semantic_search("API authentication flow")
semantic_search("database migration pattern")
Backend App Files
- backend/app/api/v1/router.py
- backend/app/api/v1/routers/dev.py
- backend/app/api/v1/routers/health.py
- backend/app/api/v1/routers/mcp_agent.py
- backend/app/core/admin_credential/models/admin_credential.py
- backend/app/core/admin_credential/router/admin_credential_router.py
- backend/app/core/admin_credential/schemas/admin_credential_schemas.py
- backend/app/core/admin_credential/services/admin_credential_service.py
- backend/app/core/auth/dependencies/auth_dependencies.py
- backend/app/core/auth/models/email_verification.py
- backend/app/core/auth/models/password_reset.py
- backend/app/core/auth/models/user.py
- backend/app/core/auth/repositories/email_verification_repository.py
- backend/app/core/auth/repositories/password_reset_repository.py
- backend/app/core/auth/repositories/user_repository.py
- backend/app/core/auth/router/auth_router.py
- backend/app/core/auth/schemas/change_password_request.py
- backend/app/core/auth/schemas/login_request.py
- backend/app/core/auth/schemas/password_reset_request.py
- backend/app/core/auth/schemas/register_request.py
- backend/app/core/auth/schemas/user_out.py
- backend/app/core/auth/security/auth_security.py
- backend/app/core/auth/services/auth_service.py
- backend/app/core/auth/services/email_service.py
- backend/app/core/db/base.py
- backend/app/core/db/session.py
- backend/app/core/infrastructure/config.py
- backend/app/core/infrastructure/credential_encryption.py
- backend/app/core/infrastructure/logging.py
- backend/app/core/infrastructure/rate_limiting.py
- backend/app/core/integration_registry.py
- backend/app/core/llm/client/client.py
- backend/app/core/llm/client/exceptions.py
- backend/app/core/llm/client/providers.py
- backend/app/core/llm/client/retry.py
- backend/app/core/llm/models/api_key.py
- backend/app/core/llm/models/model.py
- backend/app/core/llm/models/price_snapshot.py
- backend/app/core/llm/models/provider.py
- backend/app/core/llm/router/admin_models_router.py
- backend/app/core/llm/router/llm_router.py
- backend/app/core/llm/schemas/model_schemas.py
- backend/app/core/llm/schemas/user_api_key_schemas.py
- backend/app/core/llm/services/model_service.py
- backend/app/core/llm/services/provider_registry.py
- backend/app/core/llm/services/provider_service.py
- backend/app/core/llm/services/user_api_key_service.py
- backend/app/core/mcp/agent.py
- backend/app/core/mcp/client.py
- backend/app/core/mcp/data_extractor.py
- backend/app/core/mcp/models.py
- backend/app/core/mcp/schemas/mcp_schemas.py
- backend/app/core/mcp/tool_selector.py
- backend/app/core/mcp/workflow_builder.py
- backend/app/core/mcp/workflow_steps.py
- backend/app/gjo_se_com/aiscope/mapper/freelancermap_mapper.py
- backend/app/gjo_se_com/aiscope/models/contact.py
- backend/app/gjo_se_com/aiscope/models/job_role.py
- backend/app/gjo_se_com/aiscope/models/project.py
- backend/app/gjo_se_com/aiscope/models/project_contact.py
- backend/app/gjo_se_com/aiscope/models/project_freelancer_map.py
- backend/app/gjo_se_com/aiscope/models/project_job_role.py
- backend/app/gjo_se_com/aiscope/repositories/job_role_repository.py
- backend/app/gjo_se_com/aiscope/repositories/project_freelancer_map_repository.py
- backend/app/gjo_se_com/aiscope/repositories/project_repository.py
- backend/app/gjo_se_com/aiscope/router/aiscope_router.py
- backend/app/gjo_se_com/aiscope/schemas/contact_out.py
- backend/app/gjo_se_com/aiscope/schemas/job_role_create.py
- backend/app/gjo_se_com/aiscope/schemas/job_role_out.py
- backend/app/gjo_se_com/aiscope/schemas/job_role_update.py
- backend/app/gjo_se_com/aiscope/schemas/project_freelancer_map_out.py
- backend/app/gjo_se_com/aiscope/schemas/project_out.py
- backend/app/gjo_se_com/aiscope/scraper/auth.py
- backend/app/gjo_se_com/aiscope/scraper/browser.py
- backend/app/gjo_se_com/aiscope/scraper/freelancermap_scraper.py
- backend/app/gjo_se_com/aiscope/services/job_role_service.py
- backend/app/gjo_se_com/aiscope/services/project_freelancer_map_service.py
- backend/app/gjo_se_com/aiscope/services/project_service.py
- backend/app/gjo_se_com/api/router.py
- backend/app/gjo_se_com/contact/router.py
- backend/app/gjo_se_com/contact/schemas/contact_request.py
- backend/app/gjo_se_com/contact/services/contact_service.py
- backend/app/gjo_se_com/db/base.py
- backend/app/gjo_se_com/db/session.py
- backend/app/gjo_se_com/portfolio/models/portfolio.py
- backend/app/gjo_se_com/portfolio/repositories/portfolio_repository.py
- backend/app/gjo_se_com/portfolio/router/portfolio_router.py
- backend/app/gjo_se_com/portfolio/schemas/portfolio_in.py
- backend/app/gjo_se_com/portfolio/schemas/portfolio_out.py
- backend/app/gjo_se_com/portfolio/services/portfolio_service.py
- backend/app/gjo_se_com/skills/models/skill.py
- backend/app/gjo_se_com/skills/repositories/skill_repository.py
- backend/app/gjo_se_com/skills/router/skill_router.py
- backend/app/gjo_se_com/skills/schemas/skill_out.py
- backend/app/gjo_se_com/skills/services/skill_service.py
- backend/app/main.py
Frontend Routes
- -> frontend/gjo_se_com/src/router.tsx
Frontend Pages
- frontend/src/pages/AboutPage.tsx
- frontend/src/pages/ForgotPasswordPage.tsx
- frontend/src/pages/HomePage.tsx
- frontend/src/pages/ImprintPage.tsx
- frontend/src/pages/LoginPage.tsx
- frontend/src/pages/NotFoundPage.tsx
- frontend/src/pages/PortfolioDetailPage.tsx
- frontend/src/pages/PortfolioPage.tsx
- frontend/src/pages/PrivacyPage.tsx
- frontend/src/pages/RegisterPage.tsx
- frontend/src/pages/ResetPasswordPage.tsx
- frontend/src/pages/SkillPage.tsx
- frontend/src/pages/TermsPage.tsx
- frontend/src/pages/VerifyEmailChangePage.tsx
- frontend/src/pages/VerifyEmailPage.tsx
- frontend/src/pages/admin/CredentialListPage.tsx
- frontend/src/pages/admin/DashboardPage.tsx
- frontend/src/pages/admin/JobRoleListPage.tsx
- frontend/src/pages/admin/PortfolioDetailPage.tsx
- frontend/src/pages/admin/PortfolioListPage.tsx
- frontend/src/pages/admin/SkillDetailPage.tsx
- frontend/src/pages/admin/SkillListPage.tsx
- frontend/src/pages/admin/aiscope/FreelancermapDetailPage.tsx
- frontend/src/pages/admin/aiscope/FreelancermapListPage.tsx
- frontend/src/pages/admin/aiscope/ProjectDetailPage.tsx
- frontend/src/pages/admin/aiscope/ProjectListPage.tsx
- frontend/src/pages/admin/llm/SettingsPage.tsx
- frontend/src/pages/user/DashboardPage.tsx
Frontend Layouts
- frontend/src/layouts/AdminLayout.tsx
- frontend/src/layouts/DefaultLayout.tsx
Frontend Components (atoms/molecules/organisms/charts/forms)
- frontend/src/components/atoms/Audio/Audio.stories.tsx
- frontend/src/components/atoms/Audio/Audio.tsx
- frontend/src/components/atoms/Blockquote/Blockquote.stories.tsx
- frontend/src/components/atoms/Blockquote/Blockquote.tsx
- frontend/src/components/atoms/Button/Button.stories.tsx
- frontend/src/components/atoms/Button/Button.tsx
- frontend/src/components/atoms/Checkbox/Checkbox.stories.tsx
- frontend/src/components/atoms/Checkbox/Checkbox.tsx
- frontend/src/components/atoms/Chip/Chip.stories.tsx
- frontend/src/components/atoms/Chip/Chip.tsx
- frontend/src/components/atoms/ColorPicker/ColorPicker.stories.tsx
- frontend/src/components/atoms/ColorPicker/ColorPicker.tsx
- frontend/src/components/atoms/CreateButton/CreateButton.stories.tsx
- frontend/src/components/atoms/CreateButton/CreateButton.test.tsx
- frontend/src/components/atoms/CreateButton/CreateButton.tsx
- frontend/src/components/atoms/DatePicker/DatePicker.stories.tsx
- frontend/src/components/atoms/DatePicker/DatePicker.tsx
- frontend/src/components/atoms/DiagramSlot/DiagramSlot.stories.tsx
- frontend/src/components/atoms/DiagramSlot/DiagramSlot.tsx
- frontend/src/components/atoms/Divider/Divider.stories.tsx
- frontend/src/components/atoms/Divider/Divider.tsx
- frontend/src/components/atoms/Icon/Icon.stories.tsx
- frontend/src/components/atoms/Icon/Icon.tsx
- frontend/src/components/atoms/Icon/Icon.types.ts
- frontend/src/components/atoms/Icon/IconBrands.tsx
- frontend/src/components/atoms/Image/Image.stories.tsx
- frontend/src/components/atoms/Image/Image.tsx
- frontend/src/components/atoms/Input/Input.stories.tsx
- frontend/src/components/atoms/Input/Input.tsx
- frontend/src/components/atoms/Link/Link.stories.tsx
- frontend/src/components/atoms/Link/Link.tsx
- frontend/src/components/atoms/List/List.stories.tsx
- frontend/src/components/atoms/List/List.tsx
- frontend/src/components/atoms/LoadingShell/LoadingShell.test.tsx
- frontend/src/components/atoms/LoadingShell/LoadingShell.tsx
- frontend/src/components/atoms/Output/Output.stories.tsx
- frontend/src/components/atoms/Output/Output.tsx
- frontend/src/components/atoms/Progress/Progress.stories.tsx
- frontend/src/components/atoms/Progress/Progress.tsx
- frontend/src/components/atoms/Radio/Radio.stories.tsx
- frontend/src/components/atoms/Radio/Radio.tsx
- frontend/src/components/atoms/Skeleton/Skeleton.stories.tsx
- frontend/src/components/atoms/Skeleton/Skeleton.tsx
- frontend/src/components/atoms/Slider/Slider.stories.tsx
- frontend/src/components/atoms/Slider/Slider.tsx
- frontend/src/components/atoms/Spinner/Spinner.stories.tsx
- frontend/src/components/atoms/Spinner/Spinner.tsx
- frontend/src/components/atoms/Spinner/SpinnerScreen.tsx
- frontend/src/components/atoms/Switch/Switch.stories.tsx
- frontend/src/components/atoms/Switch/Switch.tsx
- frontend/src/components/atoms/Text/Text.stories.tsx
- frontend/src/components/atoms/Text/Text.tsx
- frontend/src/components/atoms/Textarea/Textarea.stories.tsx
- frontend/src/components/atoms/Textarea/Textarea.tsx
- frontend/src/components/atoms/Time/Time.stories.tsx
- frontend/src/components/atoms/Time/Time.tsx
- frontend/src/components/atoms/Video/Video.stories.tsx
- frontend/src/components/atoms/Video/Video.tsx
- frontend/src/components/charts/AreaChart/AreaChart.stories.tsx
- frontend/src/components/charts/AreaChart/AreaChart.tsx
- frontend/src/components/charts/BarChart/BarChart.stories.tsx
- frontend/src/components/charts/BarChart/BarChart.tsx
- frontend/src/components/charts/ChartShell/ChartShell.tsx
- frontend/src/components/charts/ChartTooltip.tsx
- frontend/src/components/charts/ComposedChart/ComposedChart.stories.tsx
- frontend/src/components/charts/ComposedChart/ComposedChart.tsx
- frontend/src/components/charts/ForceGraph/ForceGraph.stories.tsx
- frontend/src/components/charts/ForceGraph/ForceGraph.tsx
- frontend/src/components/charts/LineChart/LineChart.stories.tsx
- frontend/src/components/charts/LineChart/LineChart.tsx
- frontend/src/components/charts/PieChart/PieChart.stories.tsx
- frontend/src/components/charts/PieChart/PieChart.tsx
- frontend/src/components/charts/ProjectChartFilters/ProjectChartFilters.stories.tsx
- frontend/src/components/charts/ProjectChartFilters/ProjectChartFilters.tsx
- frontend/src/components/charts/RadarChart/RadarChart.stories.tsx
- frontend/src/components/charts/RadarChart/RadarChart.tsx
- frontend/src/components/charts/RadialBarChart/RadialBarChart.stories.tsx
- frontend/src/components/charts/RadialBarChart/RadialBarChart.tsx
- frontend/src/components/charts/ScatterChart/ScatterChart.stories.tsx
- frontend/src/components/charts/ScatterChart/ScatterChart.tsx
- frontend/src/components/charts/constants.ts
- frontend/src/components/forms/AuthForm/AuthForm.stories.tsx
- frontend/src/components/forms/AuthForm/AuthForm.tsx
- frontend/src/components/forms/DateRangePicker/DateRangePicker.stories.tsx
- frontend/src/components/forms/DateRangePicker/DateRangePicker.tsx
- frontend/src/components/forms/FileUpload/FileUpload.stories.tsx
- frontend/src/components/forms/FileUpload/FileUpload.tsx
- frontend/src/components/forms/ForgotPasswordForm/ForgotPasswordForm.stories.tsx
- frontend/src/components/forms/ForgotPasswordForm/ForgotPasswordForm.tsx
- frontend/src/components/forms/FormField/FormField.stories.tsx
- frontend/src/components/forms/FormField/FormField.tsx
- frontend/src/components/forms/FormField/FormField.types.ts
- frontend/src/components/forms/FormField/FormProvider.tsx
- frontend/src/components/forms/ResetPasswordForm/ResetPasswordForm.stories.tsx
- frontend/src/components/forms/ResetPasswordForm/ResetPasswordForm.test.tsx
- frontend/src/components/forms/ResetPasswordForm/ResetPasswordForm.tsx
- frontend/src/components/forms/ResetPasswordForm/extractResetError.ts
- frontend/src/components/forms/SearchBar/SearchBar.stories.tsx
- frontend/src/components/forms/SearchBar/SearchBar.tsx
- frontend/src/components/forms/TwoColumnForm/TwoColumnForm.stories.tsx
- frontend/src/components/forms/TwoColumnForm/TwoColumnForm.tsx
- frontend/src/components/forms/VerifyEmailChangeForm/VerifyEmailChangeForm.stories.tsx
- frontend/src/components/forms/VerifyEmailChangeForm/VerifyEmailChangeForm.tsx
- frontend/src/components/forms/VerifyEmailForm/VerifyEmailForm.stories.tsx
- frontend/src/components/forms/VerifyEmailForm/VerifyEmailForm.tsx
- frontend/src/components/forms/hooks/createCrudFormProps.test.ts
- frontend/src/components/forms/hooks/createCrudFormProps.ts
- frontend/src/components/forms/hooks/useFormPopulation.test.ts
- frontend/src/components/forms/hooks/useFormPopulation.ts
- frontend/src/components/forms/hooks/useZodForm.ts
- frontend/src/components/forms/hooks/validateCrudForm.test.ts
- frontend/src/components/forms/hooks/validateCrudForm.ts
- frontend/src/components/molecules/AboutMe/AboutMe.stories.tsx
- frontend/src/components/molecules/AboutMe/AboutMe.tsx
- frontend/src/components/molecules/Accordion/Accordion.stories.tsx
- frontend/src/components/molecules/Accordion/Accordion.tsx
- frontend/src/components/molecules/ActionLink/ActionLink.stories.tsx
- frontend/src/components/molecules/ActionLink/ActionLink.tsx
- frontend/src/components/molecules/Avatar/Avatar.stories.tsx
- frontend/src/components/molecules/Avatar/Avatar.tsx
- frontend/src/components/molecules/Breadcrumb/Breadcrumb.stories.tsx
- frontend/src/components/molecules/Breadcrumb/Breadcrumb.tsx
- frontend/src/components/molecules/Card/Card.stories.tsx
- frontend/src/components/molecules/Card/Card.tsx
- frontend/src/components/molecules/Card/CardBody.tsx
- frontend/src/components/molecules/Card/CardFooter.tsx
- frontend/src/components/molecules/Card/CardHeader.tsx
- frontend/src/components/molecules/CodeBlock/CodeBlock.stories.tsx
- frontend/src/components/molecules/CodeBlock/CodeBlock.tsx
- frontend/src/components/molecules/ContentElementHeader/ContentElementHeader.stories.tsx
- frontend/src/components/molecules/ContentElementHeader/ContentElementHeader.tsx
- frontend/src/components/molecules/CookieBanner/CookieBanner.stories.tsx
- frontend/src/components/molecules/CookieBanner/CookieBanner.tsx
- frontend/src/components/molecules/DevLoginBypass/DevLoginBypass.stories.tsx
- frontend/src/components/molecules/DevLoginBypass/DevLoginBypass.tsx
- frontend/src/components/molecules/Dropdown/Dropdown.stories.tsx
- frontend/src/components/molecules/Dropdown/Dropdown.tsx
- frontend/src/components/molecules/ErrorState/ErrorState.stories.tsx
- frontend/src/components/molecules/ErrorState/ErrorState.tsx
- frontend/src/components/molecules/FeaturedSkills/FeaturedSkills.stories.tsx
- frontend/src/components/molecules/FeaturedSkills/FeaturedSkills.tsx
- frontend/src/components/molecules/Markdown/Markdown.stories.tsx
- frontend/src/components/molecules/Markdown/Markdown.tsx
- frontend/src/components/molecules/Modal/Modal.stories.tsx
- frontend/src/components/molecules/Modal/Modal.tsx
- frontend/src/components/molecules/NavLink/NavLink.stories.tsx
- frontend/src/components/molecules/NavLink/NavLink.tsx
- frontend/src/components/molecules/PageHeader/PageHeader.stories.tsx
- frontend/src/components/molecules/PageHeader/PageHeader.tsx
- frontend/src/components/molecules/Popover/Popover.stories.tsx
- frontend/src/components/molecules/Popover/Popover.tsx
- frontend/src/components/molecules/PortfolioSections/PortfolioSections.stories.tsx
- frontend/src/components/molecules/PortfolioSections/PortfolioSections.tsx
- frontend/src/components/molecules/ProjectCard/ProjectCard.stories.tsx
- frontend/src/components/molecules/ProjectCard/ProjectCard.tsx
- frontend/src/components/molecules/ScraperControls/ScraperControls.stories.tsx
- frontend/src/components/molecules/ScraperControls/ScraperControls.test.tsx
- frontend/src/components/molecules/ScraperControls/ScraperControls.tsx
- frontend/src/components/molecules/ScraperControls/ScraperControls.types.ts
- frontend/src/components/molecules/ShowcaseSection/PropsTable.tsx
- frontend/src/components/molecules/ShowcaseSection/ShowcaseSection.stories.tsx
- frontend/src/components/molecules/ShowcaseSection/ShowcaseSection.tsx
- frontend/src/components/molecules/ShowcaseSection/VisibleAtomsContext.ts
- frontend/src/components/molecules/ShowcaseSection/VisibleAtomsProvider.tsx
- frontend/src/components/molecules/SideNav/SideNav.stories.tsx
- frontend/src/components/molecules/SideNav/SideNav.tsx
- frontend/src/components/molecules/SideOver/SideOver.stories.tsx
- frontend/src/components/molecules/SideOver/SideOver.tsx
- frontend/src/components/molecules/SideSearch/SideSearch.stories.tsx
- frontend/src/components/molecules/SideSearch/SideSearch.tsx
- frontend/src/components/molecules/SkillCard/SkillCard.stories.tsx
- frontend/src/components/molecules/SkillCard/SkillCard.tsx
- frontend/src/components/molecules/SocialLink/SocialLink.stories.tsx
- frontend/src/components/molecules/SocialLink/SocialLink.tsx
- frontend/src/components/molecules/TableRowActions/TableRowActions.stories.tsx
- frontend/src/components/molecules/TableRowActions/TableRowActions.tsx
- frontend/src/components/molecules/Tabs/Tabs.stories.tsx
- frontend/src/components/molecules/Tabs/Tabs.tsx
- frontend/src/components/molecules/Tabs/TabsContext.ts
- frontend/src/components/molecules/Tabs/TabsList.tsx
- frontend/src/components/molecules/Tabs/TabsPanel.tsx
- frontend/src/components/molecules/Tabs/TabsTrigger.tsx
- frontend/src/components/molecules/TagGroup/TagGroup.stories.tsx
- frontend/src/components/molecules/TagGroup/TagGroup.tsx
- frontend/src/components/molecules/TextSections/TextSections.stories.tsx
- frontend/src/components/molecules/TextSections/TextSections.tsx
- frontend/src/components/molecules/ThemeToggle/ThemeToggle.stories.tsx
- frontend/src/components/molecules/ThemeToggle/ThemeToggle.tsx
- frontend/src/components/molecules/Timeline/Timeline.stories.tsx
- frontend/src/components/molecules/Timeline/Timeline.tsx
- frontend/src/components/molecules/Toast/Toast.stories.tsx
- frontend/src/components/molecules/Toast/Toast.tsx
- frontend/src/components/molecules/Tooltip/Tooltip.stories.tsx
- frontend/src/components/molecules/Tooltip/Tooltip.tsx
- frontend/src/components/molecules/UserProfile/UserProfile.stories.tsx
- frontend/src/components/molecules/UserProfile/UserProfile.tsx
- frontend/src/components/organisms/AdminNavigation/AdminNavigation.stories.tsx
- frontend/src/components/organisms/AdminNavigation/AdminNavigation.tsx
- frontend/src/components/organisms/AdminNavigation/AdminNavigation.types.ts
- frontend/src/components/organisms/Carousel/Carousel.stories.tsx
- frontend/src/components/organisms/Carousel/Carousel.tsx
- frontend/src/components/organisms/DataTable/DataTable.stories.tsx
- frontend/src/components/organisms/DataTable/DataTable.test.tsx
- frontend/src/components/organisms/DataTable/DataTable.tsx
- frontend/src/components/organisms/DataTable/DataTable.types.ts
- frontend/src/components/organisms/DataTable/DataTablePagination.tsx
- frontend/src/components/organisms/DataTable/DataTableRenderer.tsx
- frontend/src/components/organisms/DataTable/DataTableToolbar.tsx
- frontend/src/components/organisms/DataTable/useDataTable.ts
- frontend/src/components/organisms/DataTable/useTablePage.ts
- frontend/src/components/organisms/DataTable/useTableUrlState.ts
- frontend/src/components/organisms/ErrorBoundary/ErrorBoundary.stories.tsx
- frontend/src/components/organisms/ErrorBoundary/ErrorBoundary.tsx
- frontend/src/components/organisms/Footer/Footer.stories.tsx
- frontend/src/components/organisms/Footer/Footer.tsx
- frontend/src/components/organisms/Grid/Grid.stories.tsx
- frontend/src/components/organisms/Grid/Grid.tsx
- frontend/src/components/organisms/Header/Header.stories.tsx
- frontend/src/components/organisms/Header/Header.tsx
- frontend/src/components/organisms/HeroSection/HeroSection.stories.tsx
- frontend/src/components/organisms/HeroSection/HeroSection.tsx
- frontend/src/components/organisms/MobileNav/MobileNav.stories.tsx
- frontend/src/components/organisms/MobileNav/MobileNav.tsx
- frontend/src/components/organisms/Navigation/Navigation.stories.tsx
- frontend/src/components/organisms/Navigation/Navigation.tsx
- frontend/src/components/organisms/ProjectDetailView/DetailShell.tsx
- frontend/src/components/organisms/ProjectDetailView/ProjectDetailView.stories.tsx
- frontend/src/components/organisms/ProjectDetailView/ProjectDetailView.tsx
- frontend/src/components/organisms/ProjectDetailView/detailTokens.ts
- frontend/src/components/organisms/ProjectsDataTableToolbar/ProjectsDataTableToolbar.stories.tsx
- frontend/src/components/organisms/ProjectsDataTableToolbar/ProjectsDataTableToolbar.tsx
- frontend/src/components/organisms/ShowcaseSidebar/ShowcaseSidebar.stories.tsx
- frontend/src/components/organisms/ShowcaseSidebar/ShowcaseSidebar.tsx
- frontend/src/components/organisms/SkillGrid/SkillGrid.stories.tsx
- frontend/src/components/organisms/SkillGrid/SkillGrid.tsx
- frontend/src/components/ui/badge.tsx
- frontend/src/components/ui/button.tsx
- frontend/src/components/ui/checkbox.tsx
- frontend/src/components/ui/input.tsx
- frontend/src/components/ui/separator.tsx
Frontend Features
- frontend/src/features/admin/hooks/useAdminDashboard.ts
- frontend/src/features/adminCredentials/components/integrationCredentials/IntegrationCredentialForm.tsx
- frontend/src/features/adminCredentials/components/integrationCredentials/IntegrationCredentialsActions.tsx
- frontend/src/features/adminCredentials/components/integrationCredentials/IntegrationCredentialsColumns.tsx
- frontend/src/features/adminCredentials/components/integrationCredentials/IntegrationCredentialsTab.tsx
- frontend/src/features/adminCredentials/components/llmCredentials/LLMCredentialForm.tsx
- frontend/src/features/adminCredentials/components/llmCredentials/LLMCredentialsActions.tsx
- frontend/src/features/adminCredentials/components/llmCredentials/LLMCredentialsColumns.tsx
- frontend/src/features/adminCredentials/components/llmCredentials/LLMCredentialsTab.tsx
- frontend/src/features/adminCredentials/components/shared/CredentialFormError.test.tsx
- frontend/src/features/adminCredentials/components/shared/CredentialFormError.tsx
- frontend/src/features/adminCredentials/components/shared/CredentialFormFooter.test.tsx
- frontend/src/features/adminCredentials/components/shared/CredentialFormFooter.tsx
- frontend/src/features/adminCredentials/components/shared/PasswordToggleButton.test.tsx
- frontend/src/features/adminCredentials/components/shared/PasswordToggleButton.tsx
- frontend/src/features/adminCredentials/hooks/useAdminIntegrationCredentials.ts
- frontend/src/features/adminCredentials/hooks/useAdminLLMCredentials.ts
- frontend/src/features/adminCredentials/hooks/useCredentialCrud.test.ts
- frontend/src/features/adminCredentials/hooks/useCredentialCrud.ts
- frontend/src/features/adminCredentials/hooks/useCredentialForm.ts
- frontend/src/features/adminCredentials/services/adminCredentialService.ts
- frontend/src/features/adminCredentials/utils/credentialActionsColumn.test.tsx
- frontend/src/features/adminCredentials/utils/credentialActionsColumn.tsx
- frontend/src/features/adminCredentials/utils/credentialTestMeta.test.ts
- frontend/src/features/adminCredentials/utils/credentialTestMeta.ts
- frontend/src/features/aiscope/components/adminJobRolesDataTable/AdminJobRolesActions.tsx
- frontend/src/features/aiscope/components/adminJobRolesDataTable/AdminJobRolesColumns.tsx
- frontend/src/features/aiscope/components/adminProjectsDataTable/AdminProjectsActions.tsx
- frontend/src/features/aiscope/components/adminProjectsDataTable/AdminProjectsColumns.tsx
- frontend/src/features/aiscope/components/rawFreelancermapDataTable/FreelancermapActions.tsx
- frontend/src/features/aiscope/components/rawFreelancermapDataTable/FreelancermapColumns.tsx
- frontend/src/features/aiscope/hooks/useAdminJobRoles.ts
- frontend/src/features/aiscope/hooks/useAdminProjects.test.tsx
- frontend/src/features/aiscope/hooks/useAdminProjects.ts
- frontend/src/features/aiscope/hooks/useEntityDetail.test.ts
- frontend/src/features/aiscope/hooks/useEntityDetail.ts
- frontend/src/features/aiscope/hooks/useFreelancermapDetail.test.ts
- frontend/src/features/aiscope/hooks/useFreelancermapDetail.ts
- frontend/src/features/aiscope/hooks/useFreelancermapTable.ts
- frontend/src/features/aiscope/hooks/useProjectDetail.ts
- frontend/src/features/aiscope/hooks/useProjectTrends.ts
- frontend/src/features/aiscope/services/adminAiscopeService.test.ts
- frontend/src/features/aiscope/services/adminAiscopeService.ts
- frontend/src/features/aiscope/services/aiscopeJobRoles.ts
- frontend/src/features/aiscope/types.ts
- frontend/src/features/aiscope/utils/projectColumnFactories.test.tsx
- frontend/src/features/aiscope/utils/projectColumnFactories.tsx
- frontend/src/features/auth/components/accountDeleteSection/AccountDeleteSection.tsx
- frontend/src/features/auth/components/emailChangeForm/EmailChangeForm.tsx
- frontend/src/features/auth/components/passwordChangeForm/PasswordChangeForm.tsx
- frontend/src/features/auth/components/userApiKeysTab/UserApiKeysTab.tsx
- frontend/src/features/auth/hooks/useAccountDelete.test.ts
- frontend/src/features/auth/hooks/useAccountDelete.ts
- frontend/src/features/auth/hooks/useAuth.ts
- frontend/src/features/auth/hooks/useCurrentUser.ts
- frontend/src/features/auth/hooks/useEmailChange.ts
- frontend/src/features/auth/hooks/useLoginRedirect.ts
- frontend/src/features/auth/hooks/useLogout.ts
- frontend/src/features/auth/hooks/usePasswordChange.ts
- frontend/src/features/auth/hooks/useUserApiKeyActions.ts
- frontend/src/features/auth/hooks/useUserApiKeys.ts
- frontend/src/features/auth/services/authApi.ts
- frontend/src/features/auth/services/userApiKeyService.ts
- frontend/src/features/auth/types.ts
- frontend/src/features/llm/components/llmModels/LLMModelsTab.test.tsx
- frontend/src/features/llm/components/llmModels/LLMModelsTab.tsx
- frontend/src/features/llm/components/llmModels/llmModelsDataTable/LLMModelsActions.tsx
- frontend/src/features/llm/components/llmModels/llmModelsDataTable/LLMModelsColumns.tsx
- frontend/src/features/llm/components/llmProviders/LLMProvidersTab.test.tsx
- frontend/src/features/llm/components/llmProviders/LLMProvidersTab.tsx
- frontend/src/features/llm/components/llmProviders/llmProvidersDataTable/LLMProvidersActions.tsx
- frontend/src/features/llm/components/llmProviders/llmProvidersDataTable/LLMProvidersColumns.tsx
- frontend/src/features/llm/hooks/useLLMModels.test.ts
- frontend/src/features/llm/hooks/useLLMModels.ts
- frontend/src/features/llm/hooks/useLLMModelsTable.ts
- frontend/src/features/llm/hooks/useLLMProviders.ts
- frontend/src/features/llm/services/modelCatalogService.ts
- frontend/src/features/llm/services/providerService.ts
- frontend/src/features/portfolio/api/endpoints/create-portfolio.ts
- frontend/src/features/portfolio/api/endpoints/delete-portfolio.ts
- frontend/src/features/portfolio/api/endpoints/get-portfolio.ts
- frontend/src/features/portfolio/api/endpoints/get-portfolios.ts
- frontend/src/features/portfolio/api/endpoints/get-slug.ts
- frontend/src/features/portfolio/api/endpoints/update-portfolio.ts
- frontend/src/features/portfolio/api/queries.ts
- frontend/src/features/portfolio/hooks/useDetailQuery.ts
- frontend/src/features/portfolio/hooks/usePortfolioDetail.ts
- frontend/src/features/portfolio/hooks/usePortfolioForm.ts
- frontend/src/features/portfolio/hooks/usePortfolioList.ts
- frontend/src/features/portfolio/hooks/usePortfolioTable.ts
- frontend/src/features/portfolio/ui/DataTable/Actions.tsx
- frontend/src/features/portfolio/ui/DataTable/Columns.tsx
- frontend/src/features/portfolio/ui/Form/Form.tsx
- frontend/src/features/portfolio/utils/mapToCard.ts
- frontend/src/features/skill/api/endpoints/create-skill.ts
- frontend/src/features/skill/api/endpoints/delete-skill.ts
- frontend/src/features/skill/api/endpoints/get-skill.ts
- frontend/src/features/skill/api/endpoints/get-skills.ts
- frontend/src/features/skill/api/endpoints/skills.ts
- frontend/src/features/skill/api/endpoints/update-skill.ts
- frontend/src/features/skill/api/queries.ts
- frontend/src/features/skill/hooks/useSkillForm.ts
- frontend/src/features/skill/hooks/useSkillList.ts
- frontend/src/features/skill/hooks/useSkillTable.ts
- frontend/src/features/skill/ui/DataTable/Actions.tsx
- frontend/src/features/skill/ui/DataTable/Columns.tsx
- frontend/src/features/skill/ui/Form/Form.tsx
Frontend Shared Hooks
- frontend/src/hooks/useActiveJobRoles.ts
- frontend/src/hooks/useBreadcrumbs.ts
- frontend/src/hooks/useClientSideTable.ts
- frontend/src/hooks/useDarkMode.ts
- frontend/src/hooks/useDateFilter.ts
- frontend/src/hooks/useEscapeToCancel.ts
- frontend/src/hooks/useServerSideTable.test.tsx
- frontend/src/hooks/useServerSideTable.ts
- frontend/src/hooks/useSimpleForm.test.ts
- frontend/src/hooks/useSimpleForm.ts
- frontend/src/hooks/useSubmitHandler.ts
Frontend Lib
- frontend/src/lib/api/axios.ts
- frontend/src/lib/api/extractError.test.ts
- frontend/src/lib/api/extractError.ts
- frontend/src/lib/api/queries.ts
- frontend/src/lib/api/types.ts
- frontend/src/lib/formatDate.ts
- frontend/src/lib/hooks/useCrudMutation.test.ts
- frontend/src/lib/hooks/useCrudMutation.ts
- frontend/src/lib/schemasGenerated.ts
- frontend/src/lib/types.generated.ts
- frontend/src/lib/utils.ts
- frontend/src/lib/withAsyncState.ts
Frontend Utils
- frontend/src/utils/projectFormatters.ts
- frontend/src/utils/projectTrendUtils.ts
Frontend Providers
- frontend/src/providers/auth/AuthContext.tsx
Frontend Config
- frontend/src/config/dev.ts
Frontend Mocks
- frontend/src/mocks/browser.ts
- frontend/src/mocks/handlers/llm.ts
- frontend/src/mocks/server.ts
Frontend Guards
- frontend/src/guards/AdminRoute.tsx
- frontend/src/guards/ProtectedRoute.tsx
Frontend Locales
- frontend/src/locales/de/validation.ts