{"repo":"kuluruvineeth/chathub","free":true,"listed":false,"github":"https://github.com/kuluruvineeth/chathub","clone":"git clone https://github.com/kuluruvineeth/chathub.git","description":"One chat interface across OpenAI, Anthropic and Gemini — with tools, web browsing and shared threads. Built on LangChain.","language":"TypeScript","stars":59,"topics":["anthropic","langchain","llm","nextjs","openai","typescript"],"license":null,"category":"ai-agents","readme_excerpt":"ChatHub One chat interface across OpenAI, Anthropic, Google and local Ollama models — with tools, web search, custom assistants, and your keys never leaving the browser. --- What it does Every model, one thread. GPT-4o, GPT-4 Turbo, Claude 3 Opus / Sonnet / Haiku, Gemini 1.5 Pro and Flash, and anything served by a local Ollama instance — switched mid-conversation without losing context. Your keys stay yours. API keys are entered in the app and stored in the browser's own IndexedDB. There is no server-side key store, and no proxy that sees your traffic. The only server credential this project needs is Supabase. Tools the model can actually call. Web search through DuckDuckGo or Google, a calculator, DALL·E image generation, and a memory tool that persists facts across sessions. Tools are opt-in per assistant. Custom assistants. Create a named assistant with its own system prompt, model, and enabled tools. Save it, edit it, switch to it. A real editor. Markdown with syntax-highlighted code blocks, image attachments, voice input via Whisper, a live token counter, and a prompt library you build up as you go. Tunable. Temperature, top-p, top-k, max tokens, message-history limit and system prompt, all per assistant. Stack --- --- Framework Next.js, TypeScript Orchestration LangChain — @langchain/openai , @langchain/anthropic , @langchain/google-genai , @langchain/community Local models Ollama, default http://localhost:11434 Persistence IndexedDB for keys, preferences and sessions; ","default_branch":null,"files":null,"tree":[],"storefront":"/r/kuluruvineeth","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kuluruvineeth/chathub/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}