> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Integrations

> Connect LLM providers, AI frameworks, and code assistants to Orq.ai. Route API calls, send observability traces, and build agents in AI Studio.

export const IntegrationsGrid = () => {
  const [query, setQuery] = useState("")
  const [tab, setTab] = useState("all")

  const integrations = [
    { title: "OpenAI", icon: "/images/logos/openai.svg", href: "/docs/integrations/providers/openai", category: "providers" },
    { title: "Anthropic", icon: "/images/logos/anthropic.svg", href: "/docs/integrations/providers/anthropic", category: "providers" },
    { title: "Google AI", icon: "/images/logos/google_ai_studio.svg", href: "/docs/integrations/providers/google-ai", category: "providers" },
    { title: "Google Vertex AI", icon: "/images/logos/vertex-ai.svg", href: "/docs/integrations/providers/vertex-ai", category: "providers" },
    { title: "Azure", icon: "/images/logos/azure.svg", href: "/docs/integrations/providers/azure", category: "providers" },
    { title: "Amazon Bedrock", icon: "/images/logos/aws-bedrock.svg", href: "/docs/integrations/providers/aws-bedrock", category: "providers" },
    { title: "Mistral", icon: "/images/logos/mistralai.svg", href: "/docs/integrations/providers/mistral", category: "providers" },
    { title: "Groq", icon: "/images/logos/groq.svg", href: "/docs/integrations/providers/groq", category: "providers" },
    { title: "Cohere", icon: "/images/logos/cohere.svg", href: "/docs/integrations/providers/cohere", category: "providers" },
    { title: "DeepSeek", icon: "/images/logos/deepseek.svg", href: "/docs/integrations/providers/deepseek", category: "providers" },
    { title: "Perplexity", icon: "/images/logos/perplexity.svg", href: "/docs/integrations/providers/perplexity", category: "providers" },
    { title: "Together AI", icon: "/images/logos/together-ai.svg", href: "/docs/integrations/providers/together-ai", category: "providers" },
    { title: "xAI", icon: "/images/logos/xai.svg", href: "/docs/integrations/providers/xai", category: "providers" },
    { title: "Moonshot AI", icon: "/images/logos/moonshot_ai.svg", href: "/docs/integrations/providers/moonshot-ai", category: "providers" },
    { title: "Cerebras", icon: "/images/logos/cerebras.svg", href: "/docs/integrations/providers/cerebras", category: "providers" },
    { title: "Scaleway", icon: "/images/logos/scaleway.svg", href: "/docs/integrations/providers/scaleway", category: "providers" },
    { title: "ElevenLabs", icon: "/images/logos/elevenlabs.svg", href: "/docs/integrations/providers/elevenlabs", category: "providers" },
    { title: "Fal", icon: "/images/logos/fal.svg", href: "/docs/integrations/providers/fal", category: "providers" },
    { title: "Leonardo AI", icon: "/images/logos/leonardoai.svg", href: "/docs/integrations/providers/leonardo-ai", category: "providers" },
    { title: "Jina", icon: "/images/logos/jinaai.svg", href: "/docs/integrations/providers/jina", category: "providers" },
    { title: "Contextual AI", icon: "/images/logos/contextualai.svg", href: "/docs/integrations/providers/contextual-ai", category: "providers" },
    { title: "LiteLLM", icon: "/images/logos/litellm.svg", href: "/docs/integrations/providers/litellm", category: "providers" },
    { title: "ByteDance", icon: "/images/logos/bytedance.svg", href: "/docs/integrations/providers/bytedance", category: "providers" },
    { title: "Alibaba", icon: "/images/logos/alibaba-cloud.svg", href: "/docs/integrations/providers/alibaba", category: "providers" },
    { title: "H Company", icon: "/images/logos/hcompany.svg", href: "/docs/integrations/providers/hcompany", category: "providers" },
    { title: "Inceptron", icon: "/images/logos/inceptron.svg", href: "/docs/integrations/providers/inceptron", category: "providers" },
    { title: "Tensorix", icon: "/images/logos/tensorix.svg", href: "/docs/integrations/providers/tensorix", category: "providers" },
    { title: "Z AI", icon: "/images/logos/z-ai.svg", href: "/docs/integrations/providers/z-ai", category: "providers" },
    { title: "OpenAI-compatible", icon: "/images/logos/open-ai-like.svg", href: "/docs/integrations/providers/open-ai-like", category: "providers" },
    { title: "Cursor", icon: "/images/logos/cursor.svg", href: "/docs/integrations/code-assistants/cursor", category: "assistants" },
    { title: "Claude Code", icon: "/images/logos/claude-code.svg", href: "/docs/integrations/code-assistants/claude-code", category: "assistants" },
    { title: "Claude Desktop", icon: "/images/logos/claude-desktop.svg", href: "/docs/integrations/code-assistants/claude-desktop", category: "assistants" },
    { title: "Warp", icon: "/images/logos/warp.svg", href: "/docs/integrations/code-assistants/warp", category: "assistants" },
    { title: "Codex", icon: "/images/logos/codex.svg", href: "/docs/integrations/code-assistants/codex", category: "assistants" },
    { title: "Droid", icon: "/images/logos/droid.svg", href: "/docs/integrations/code-assistants/droid", category: "assistants" },
    { title: "VS Code", icon: "/images/logos/vscode.svg", href: "/docs/integrations/code-assistants/vscode", category: "assistants" },
    { title: "LangChain", icon: "/images/logos/langchain.svg", href: "/docs/proxy/frameworks/langchain", category: "frameworks" },
    { title: "LangGraph", icon: "/images/logos/langgraph.svg", href: "/docs/proxy/frameworks/langgraph", category: "frameworks" },
    { title: "LlamaIndex", icon: "/images/logos/llamaindex.svg", href: "/docs/proxy/frameworks/llamaindex", category: "frameworks" },
    { title: "LlamaIndex Agents", icon: "/images/logos/llamaindex-agents.svg", href: "/docs/proxy/frameworks/llama-agents", category: "frameworks" },
    { title: "Vercel AI SDK", icon: "/images/logos/vercel-ai.svg", href: "/docs/proxy/frameworks/vercel-ai", category: "frameworks" },
    { title: "OpenAI Agents SDK", icon: "/images/logos/openai-agents.svg", href: "/docs/proxy/frameworks/openai-agents", category: "frameworks" },
    { title: "OpenAI SDK", icon: "/images/logos/openai.svg", href: "/docs/proxy/frameworks/openai", category: "frameworks" },
    { title: "Claude SDK", icon: "/images/logos/anthropic.svg", href: "/docs/proxy/frameworks/claude-agent-sdk", category: "frameworks" },
    { title: "Pydantic AI", icon: "/images/logos/pydantic-ai.svg", href: "/docs/proxy/frameworks/pydantic-ai", category: "frameworks" },
    { title: "CrewAI", icon: "/images/logos/crewai.svg", href: "/docs/proxy/frameworks/crewai", category: "frameworks" },
    { title: "Mastra", icon: "/images/logos/mastra.svg", href: "/docs/proxy/frameworks/mastra", category: "frameworks" },
    { title: "Agno", icon: "/images/logos/agno.svg", href: "/docs/proxy/frameworks/agno", category: "frameworks" },
    { title: "AutoGen", icon: "/images/logos/autogen.svg", href: "/docs/proxy/frameworks/autogen", category: "frameworks" },
    { title: "DSPy", icon: "/images/logos/dspy.svg", href: "/docs/proxy/frameworks/dspy", category: "frameworks" },
    { title: "Haystack", icon: "/images/logos/haystack.svg", href: "/docs/proxy/frameworks/haystack", category: "frameworks" },
    { title: "Instructor", icon: "/images/logos/instructor.svg", href: "/docs/proxy/frameworks/instructor", category: "frameworks" },
    { title: "SmolAgents", icon: "/images/logos/smolagents.svg", href: "/docs/proxy/frameworks/smolagents", category: "frameworks" },
    { title: "BeeAI", icon: "/images/logos/beeai.svg", href: "/docs/proxy/frameworks/beeai", category: "frameworks" },
    { title: "AWS Strands", icon: "/images/logos/aws-strands.svg", href: "/docs/proxy/frameworks/aws-strands", category: "frameworks" },
    { title: "AWS Bedrock AgentCore", icon: "/images/logos/aws-bedrock.svg", href: "/docs/proxy/frameworks/bedrock-agentcore", category: "frameworks" },
    { title: "Azure AI Agents", icon: "/images/logos/azure.svg", href: "/docs/proxy/frameworks/azure-ai-agents", category: "frameworks" },
    { title: "Google ADK", icon: "/images/logos/google_ai_studio.svg", href: "/docs/proxy/frameworks/google-ai", category: "frameworks" },
    { title: "LiteLLM", icon: "/images/logos/litellm.svg", href: "/docs/proxy/frameworks/litellm", category: "frameworks" },
    { title: "LiveKit", icon: "/images/logos/livekit.svg", href: "/docs/proxy/frameworks/livekit", category: "frameworks" },
    { title: "Semantic Kernel", icon: "/images/logos/semantic-kernel.svg", href: "/docs/proxy/frameworks/semantic-kernel", category: "frameworks" },
    { title: "OpenClaw", icon: "/images/logos/openclaw.svg", href: "/docs/proxy/frameworks/openclaw", category: "frameworks" },
    { title: "n8n", icon: "/images/logos/n8n.svg", href: "/docs/integrations/automation/n8n", category: "automations" },
  ]

  const tabs = [
    { id: "all", label: "All" },
    { id: "providers", label: "AI Providers" },
    { id: "assistants", label: "Coding Assistants" },
    { id: "frameworks", label: "Frameworks" },
    { id: "automations", label: "Automations" },
  ]

  const q = query.trim().toLowerCase()
  const filtered = integrations.filter((item) => {
    const matchesQuery = !q || item.title.toLowerCase().includes(q)
    const matchesTab = tab === "all" || item.category === tab
    return matchesQuery && matchesTab
  })

  return (
    <div>
      <input
        className="ig-search"
        type="text"
        placeholder="Search integrations..."
        aria-label="Search integrations"
        value={query}
        onChange={(e) => setQuery(e.target.value)}
      />
      <div className="ig-tabs" role="tablist">
        {tabs.map((t) => {
          const count = integrations.filter(i => {
            const matchesQuery = !q || i.title.toLowerCase().includes(q)
            const matchesTab = t.id === "all" || i.category === t.id
            return matchesQuery && matchesTab
          }).length
          return (
            <button
              key={t.id}
              role="tab"
              aria-selected={tab === t.id}
              className={"ig-tab" + (tab === t.id ? " ig-tab-active" : "")}
              onClick={() => setTab(t.id)}
            >
              {t.label}
              <span className="ig-tab-count">{count}</span>
            </button>
          )
        })}
      </div>
      <div className="ig-grid">
        {filtered.length === 0 ? (
          <div className="ig-empty">
            {query.trim() ? `No integrations found for "${query}"` : "No integrations in this category"}
          </div>
        ) : (
          filtered.map((item) => (
            <a key={item.href} href={item.href} className="ig-card">
              <img src={item.icon} alt="" className="ig-card-icon" />
              {item.title}
            </a>
          ))
        )}
      </div>
    </div>
  )
}

<IntegrationsGrid />
