ItzCrazyKns/Vane
AI EngineeringSelf-hosted AI answering engine that searches the web and answers with citations using local or cloud LLMs.
What it does
Vane is a privacy-focused AI answering engine you run on your own hardware. It sends queries to a SearxNG meta-search backend, then uses a local or cloud LLM to synthesize an answer with cited sources. You choose between local models via Ollama or Lemonade and hosted providers such as OpenAI, Claude, Gemini and Groq, switching models per query.
Beyond text: smart search modes (Speed, Balanced, Quality) trade depth for latency, sources can be web, discussions or academic papers, and domain-scoped searches narrow results to specific sites. Widgets surface weather, calculations or stock prices inline, and file uploads (PDF, text, images) let you question documents. Searches and history stay local.
It suits people who want a Perplexity-style answer engine without handing their queries to a third party, and developers who want a search API to build on.
Quick start
Docker is the recommended path. The default image bundles SearxNG, so a single command starts everything:
docker run -d -p 3000:3000 -v vane-data:/home/vane/data --name vane itzcrazykns1337/vane:latest
Open http://localhost:3000 and complete the setup screen with your AI provider API keys, models, and any other settings. The volume keeps data and uploaded files across restarts. See the installation docs for updating and other details.
If you already run SearxNG, use the slim image and point it at your instance:
docker run -d -p 3000:3000 -e SEARXNG_API_URL=http://your-searxng-url:8080 -v vane-data:/home/vane/data --name vane itzcrazykns1337/vane:slim-latest
Your SearxNG instance must have JSON output enabled and the Wolfram Alpha engine turned on.
Without Docker, clone the repo, run npm i, npm run build, npm run start, and configure SearxNG plus your models at http://localhost:3000; the README recommends Docker because it simplifies dependencies. To use Vane from the browser address bar, add a site search pointing to http://localhost:3000/?q=%s.
Constraints
- SearxNG is required: either the bundled image or your own instance with JSON format and Wolfram Alpha enabled.
- A model provider is required: local Ollama/Lemonade needs correct network exposure from inside Docker. On Windows and Mac use
http://host.docker.internal:11434; on Linux use the host's private IP and setOLLAMA_HOST=0.0.0.0:11434in the systemd unit. - OpenAI-compatible local servers must listen on
0.0.0.0and use the exact loaded model name; the API key field cannot be left empty even when the server defines no key. - No built-in authentication yet: authentication is listed as an upcoming feature, so avoid exposing the instance publicly without your own access control.
- License: MIT.
HotRepo's take
On 2026-11-01 Vane appeared in the all-languages GitHub daily trending snapshot for the TypeScript list, ranked 16th for that day and language, with 57 stars gained. No all-languages daily rank is recorded, and the single snapshot cannot establish a trend. What can be said is that the project has accumulated substantial attention (37,935 stars, 4,223 forks at that snapshot) while remaining a self-hosted tool whose setup hinges on wiring up SearxNG and a model provider. Its practical appeal is the combination of cited answers and provider flexibility, not a benchmark result; the README makes no accuracy or performance claims we can verify.
Written by AI from the project's README, updated . The project's own docs are the source of truth.