Skip to content

feat: add Tavily search provider option to settings and setup wizard#7

Open
tavily-integrations wants to merge 2 commits into
Amitkrpaliwal:mainfrom
Tavily-FDE:feat/tavily-migration/frontend-settings-tavily-ui
Open

feat: add Tavily search provider option to settings and setup wizard#7
tavily-integrations wants to merge 2 commits into
Amitkrpaliwal:mainfrom
Tavily-FDE:feat/tavily-migration/frontend-settings-tavily-ui

Conversation

@tavily-integrations

Copy link
Copy Markdown

Summary

Adds Tavily as a configurable search provider alongside existing providers (SearXNG, Brave, DuckDuckGo) in the frontend settings UI. This is an additive change — no existing providers are removed or modified.

What changed

SettingsView.tsx:

  • Added tavilyApiKey state variable
  • Added tavily option to the preferred search provider dropdown
  • Added Tavily API Key input field with link to https://app.tavily.com for key creation
  • Wired tavily_api_key through the existing POST /api/search/providers/config call

SetupWizard.tsx:

  • Added Tavily Search as an optional integration card in the setup wizard's integrations step (Step 3), parallel to the existing Brave Search entry

Files changed

  • client/src/components/SettingsView.tsx
  • client/src/components/SetupWizard.tsx

Dependency changes

None — purely frontend UI additions using existing components.

Environment variable changes

  • TAVILY_API_KEY is now accepted via the UI and sent to the backend config endpoint as tavily_api_key

Notes for reviewers

  • All changes are additive; existing Brave/SearXNG/DuckDuckGo fields remain untouched
  • Backend must handle the new tavily_api_key field in the config endpoint (handled by a separate migration unit)
  • Tavily card in SetupWizard is clearly labeled as optional

Automated Review

  • Passed after 2 attempt(s)
  • Final review: The unit correctly implements the frontend UI changes for Tavily: adds a tavilyApiKey state and password input in SettingsView, includes tavily_api_key in the POST body to /api/search/providers/config, adds "Tavily" to the preferred provider dropdown, adds Tavily to the SetupWizard INTEGRATIONS list, and maps tavily → TAVILY_API_KEY in the setupRoutes.ts integrationKeyMap. All three changed files are within scope and the changes are internally consistent. The backend handling of tavily_api_key in searchRoutes.ts (extraction, ConfigManager persistence, provider activation, priority management) is expected to land via the prerequisite config-api-tavily-support unit and should not block this unit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant