[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-73907":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":18,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":32,"readmeContent":33,"aiSummary":34,"trendingCount":16,"starSnapshotCount":16,"syncStatus":35,"lastSyncTime":36,"discoverSource":37},73907,"deep-research-web-ui","AnotiaWang\u002Fdeep-research-web-ui","AnotiaWang","(Supports DeepSeek R1) An AI-powered research assistant that performs iterative, deep research on any topic by combining search engines, web scraping, and large language models.","https:\u002F\u002Fdeep-research.ataw.top",null,"TypeScript",2180,297,18,35,0,1,3,59.22,false,"main",true,[24,25,26,27,28,29,30,31],"agent","ai","free","gpt","nuxt","openai","research","web","2026-06-12 04:01:12","# Deep Research Web UI\n\n[English | [中文](README_zh.md)]\n\nThis is a web UI for https:\u002F\u002Fgithub.com\u002Fdzhng\u002Fdeep-research, with several improvements and fixes.\n\nFeatures:\n\n- 🚀 **Safe & Secure**: In Client Mode, config and API requests stay in your browser locally\n- 🕙 **Realtime feedback**: Stream AI responses and reflect on the UI in real-time\n- 🌳 **Search visualization**: Shows the research process using a tree structure. Supports searching in different languages\n- 📄 **Export as PDF**: Export the final research report as Markdown \u002F PDF\n- 🤖 **Supports more models**: Uses plain prompts instead of newer, less widely supported features like Structured Outputs. This ensures to work with more providers that haven't caught up with the latest OpenAI capabilities.\n- 🐳 **Docker support**: Deploy in your environment in one-line command\n- 🔧 **Server Mode**: Deploy with environment variables, no need for users to configure API keys\n\nCurrently available providers:\n\n- AI: OpenAI compatible, SiliconFlow, InfiniAI, DeepSeek, OpenRouter, Ollama and more\n- Web Search: Tavily (1000 free credits \u002F month), Firecrawl (cloud \u002F self-hosted), Google PSE\n\nPlease give a 🌟 Star if you like this project!\n\n## Sponsor\n\n\u003Ca href=\"https:\u002F\u002Fwww.swiftproxy.net\u002F?ref=anotiawang\">\n\u003Cimg width=\"415\" alt=\"image\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fdf889a5f-c4fc-4209-b49d-9c7dc8b9c3ca\" \u002F>\n\u003C\u002Fa>\n\n**Unlock Reliable Proxy Services with Swiftproxy**\n\nWith Swiftproxy, you can access high-performance, secure proxies to enhance your web automation, privacy, and data collection efforts. Our services are trusted by developers and businesses to scale scraping tasks and ensure a safe online experience. Get started today at Swiftproxy.net. Use the coupon `GHB5` to get 10% off!\n\n---\n\n\u003Cvideo width=\"500\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F8f9baa43-a74e-4613-aebb-1bcc29a686f0\" controls>\u003C\u002Fvideo>\n\n## Recent updates\n\n25\u002F07\u002F24\n\n- Added: Research history management - Export\u002Fimport individual history records, delete all records\n\n25\u002F07\u002F23\n\n- Added: Server Mode - Deploy with environment variables, users don't need to configure API keys\n\n25\u002F06\u002F26\n\n- Added: Provider 302.AI support\n\n25\u002F04\u002F06\n\n- Added: Use Google PSE for web search\n\n25\u002F03\u002F09\n\n- Added: InfiniAI support\n- Improved LLM prompts\n- Improved error handling\n- Improved: Try to fetch model list even when no API key is provided\n\n25\u002F02\u002F27\n\n- Added: Citations in research report\n- Improved: Chinese output layout\n- Improved: Increased max width and breadth in the form\n- Fixed: Text overflow issues for web search node details\n- Fixed: general UI style issues\n\n25\u002F02\u002F24\n\n- Added: Fullscreen mode for the search flow. This helps you to focus on the search process better.\n- Changed: \"Export PDF\" now uses the browser's native print ability. This fixes layout issues and eliminates font problems.\n- Fixed: \"Context Size\" setting are not correctly applied\n\n25\u002F02\u002F22\n\n- Added: NL\u002FDutch translation\n- Added: Retry failed nodes in web search\n- Fixed: Web search node sometimes shows empty label and duplicated learnings\n- Fixed: Firecrawl now limits scrape content format to `Markdown`\n\n25\u002F02\u002F18 - 25\u002F02\u002F20\n\n- Added: \"advanced search\" and \"search topic\" support for Tavily\n- Added: custom endpoint support for Firecrawl\n- Fixed: overall bug fixes, less \"invalid JSON structure\" errors\n\n25\u002F02\u002F17\n\n- Added: set rate limits for web search\n- Added: set context length for AI model\n\n25\u002F02\u002F16\n\n- Refactored the search visualization using VueFlow\n- Style & bug fixes\n\n\u003Cdetails>\n\u003Csummary>Older updates\u003C\u002Fsummary>\n\n25\u002F02\u002F15\n\n- Added AI providers DeepSeek, OpenRouter and Ollama; Added web search provider Firecrawl\n- Supported checking project updates\n- Supported regenerating reports\n- General fixes\n\n25\u002F02\u002F14\n\n- Supported reasoning models like DeepSeek R1\n- Improved compatibility with more models & error handling\n\n25\u002F02\u002F13\n\n- Significantly reduced bundle size\n- Supported searching in different languages\n- Added Docker support\n- Fixed \"export as PDF\" issues\n\u003C\u002Fdetails>\n\n## How to use\n\nLive demo: \u003Ca href=\"https:\u002F\u002Fdeep-research.ataw.top\" target=\"_blank\">https:\u002F\u002Fdeep-research.ataw.top\u003C\u002Fa>\n\n### Deployment modes\n\n- **Client Mode**: users enter their own API keys in the browser. This is the best fit for static deployments such as EdgeOne Pages or `pnpm generate`.\n- **Server Mode**: API keys are configured as server-side environment variables, so users do not need to enter keys in the UI. This requires an SSR\u002FNitro runtime such as the Docker image; it is not available in purely static deployments.\n\n### Self hosted\n\n#### Server Mode (Recommended)\nDeploy with environment variables - users don't need to configure API keys. Use this mode when you can run the Nuxt server:\n\n**Using Docker with environment variables:**\n\n```bash\ndocker run -p 3000:3000 \\\n  -e NUXT_PUBLIC_SERVER_MODE=true \\\n  -e NUXT_AI_API_KEY=your-ai-api-key \\\n  -e NUXT_WEB_SEARCH_API_KEY=your-search-api-key \\\n  -e NUXT_PUBLIC_AI_PROVIDER=openai-compatible \\\n  -e NUXT_PUBLIC_AI_MODEL=gpt-4o-mini \\\n  -e NUXT_PUBLIC_WEB_SEARCH_PROVIDER=tavily \\\n  anotia\u002Fdeep-research-web:latest\n```\n\n**Using Docker with .env file:**\n\n```bash\n# Copy .env.example and update it with your configuration\ncp .env.example .env\ndocker run -p 3000:3000 --env-file .env anotia\u002Fdeep-research-web:latest\n```\n\n#### Client Mode (Traditional)\nUsers configure their own API keys in the browser. Use this mode for static deployments:\n\nOne-click deploy with [EdgeOne Pages](https:\u002F\u002Fedgeone.ai\u002Fproducts\u002Fpages):\n\n[![Deploy with EdgeOne Pages](https:\u002F\u002Fcdnstatic.tencentcs.com\u002Fedgeone\u002Fpages\u002Fdeploy.svg)](https:\u002F\u002Fedgeone.ai\u002Fpages\u002Fnew?from=github&template=https:\u002F\u002Fgithub.com\u002FAnotiaWang\u002Fdeep-research-web-ui&from=github)\n\nUse pre-built Docker image:\n\n```bash\ndocker run -p 3000:3000 --name deep-research-web -d anotia\u002Fdeep-research-web:latest\n```\n\nUse self-built Docker image:\n\n```\ngit clone https:\u002F\u002Fgithub.com\u002FAnotiaWang\u002Fdeep-research-web-ui\ncd deep-research-web-ui\ndocker build -t deep-research-web .\ndocker run -p 3000:3000 --name deep-research-web -d deep-research-web\n```\n\n### Environment Variables\n\n#### Server Mode Configuration\n| Variable | Description | Default |\n|----------|-------------|---------|\n| `NUXT_PUBLIC_SERVER_MODE` | Enable server mode | `false` |\n| `NUXT_AI_API_KEY` | AI provider API key | - |\n| `NUXT_AI_API_BASE` | AI provider base URL | - |\n| `NUXT_WEB_SEARCH_API_KEY` | Web search API key | - |\n| `NUXT_WEB_SEARCH_API_BASE` | Web search base URL | - |\n\n#### Public Configuration (Server Mode)\n| Variable | Description | Default |\n|----------|-------------|---------|\n| `NUXT_PUBLIC_AI_PROVIDER` | AI provider type | `openai-compatible` |\n| `NUXT_PUBLIC_AI_MODEL` | AI model name | `gpt-4o-mini` |\n| `NUXT_PUBLIC_AI_CONTEXT_SIZE` | Context size | `128000` |\n| `NUXT_PUBLIC_WEB_SEARCH_PROVIDER` | Search provider | `tavily` |\n| `NUXT_PUBLIC_WEB_SEARCH_CONCURRENCY_LIMIT` | Max concurrency | `2` |\n| `NUXT_PUBLIC_WEB_SEARCH_SEARCH_LANGUAGE` | Search language | `en` |\n| `NUXT_PUBLIC_TAVILY_ADVANCED_SEARCH` | Use Tavily advanced search | `false` |\n| `NUXT_PUBLIC_TAVILY_SEARCH_TOPIC` | Tavily search topic | `general` |\n| `NUXT_PUBLIC_GOOGLE_PSE_ID` | Google PSE ID | - |\n\n#### Provider values\n\n| Type | Supported values |\n|------|------------------|\n| AI provider | `openai-compatible`, `siliconflow`, `302-ai`, `infiniai`, `openrouter`, `deepseek`, `ollama` |\n| Web search provider | `tavily`, `firecrawl`, `google-pse` |\n\nNotes:\n\n- `NUXT_WEB_SEARCH_API_KEY` supports comma-separated keys for Tavily and Google PSE, for example `key1,key2,key3`.\n- Google PSE requires both `NUXT_WEB_SEARCH_API_KEY` and `NUXT_PUBLIC_GOOGLE_PSE_ID`.\n- Firecrawl self-hosted deployments can set `NUXT_WEB_SEARCH_API_BASE`.\n- Ollama uses `http:\u002F\u002Flocalhost:11434\u002Fv1` as the default API base. When running the app inside Docker, `localhost` refers to the container itself, so set `NUXT_AI_API_BASE` to a reachable host or Docker network address if Ollama runs outside the container.\n\n---\n\n## Developing\n\n### Setup\n\nMake sure to install dependencies:\n\n```bash\npnpm install\n```\n\n## Development Server\n\nStart the development server on `http:\u002F\u002Flocalhost:3000`:\n\n```bash\npnpm dev\n```\n\n## Production\n\nBuild the application for production:\n\nIf you want to deploy a SSR application:\n\n```bash\npnpm build\n```\n\nIf you want to deploy a static, SSG application:\n\n```bash\npnpm generate\n```\n\nLocally preview production build:\n\n```bash\npnpm preview\n```\n\nCheck out the [deployment documentation](https:\u002F\u002Fnuxt.com\u002Fdocs\u002Fgetting-started\u002Fdeployment) for more information.\n\n## License\n\nMIT\n\n## Star History\n\n[![Star History Chart](https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=AnotiaWang\u002Fdeep-research-web-ui&type=Date)](https:\u002F\u002Fstar-history.com\u002F#AnotiaWang\u002Fdeep-research-web-ui&Date)\n","Deep Research Web UI 是一个基于AI的研究助手，通过结合搜索引擎、网页抓取和大型语言模型来对任何主题进行迭代深入研究。其核心功能包括实时反馈、安全的客户端模式运行、研究过程可视化（树状结构）、支持多种语言搜索及结果导出为Markdown\u002FPDF格式。技术上，该项目使用TypeScript构建，并支持Docker部署与更多AI模型兼容性优化。适用于需要高效获取并整理特定领域信息的研究人员、学生或企业用户，在保证数据隐私的同时提高研究效率。",2,"2026-06-11 03:47:51","high_star"]