Stacks / AI chat
Perplexica + SearXNG
Cited answers you host. Perplexica is MIT; SearXNG is AGPL-3.0 — Perplexity without the answer in someone else's log.
The problem
Perplexity is a hosted answer engine: search plus a model plus citations. You wanted that loop on hardware you run. Perplexica is MIT (cited answers). SearXNG is AGPL-3.0 (the search backend). You still bring a model (Ollama or a cloud key). This is not Perplexity's every focus mode or Pro index.
Replaces
Perplexity
Estimated SaaS saved
$1,200
per year, small team, before lock-in
Start on RailwayOpen WebUI if this is chat, not cited search
Placeholder: Perplexica + SearXNG (JSON enabled) plus your model endpoint. No one-click template in this repo yet — Start on Railway. Plain chat stays on /stacks/open-webui-litellm.
The stack
- Perplexica
MIT self-hosted cited-answer engine
- SearXNG
AGPL-3.0 metasearch backend Perplexica queries
Cost table
| You stop paying | Typical / year | Self-host instead |
|---|---|---|
| Perplexity paid (small team) | $1,200 | Perplexica + SearXNG + your model |
Agent setup prompt
Replace Perplexity with Perplexica plus SearXNG. - Enable JSON on SearXNG. Point Perplexica at it and at a model (Ollama or LiteLLM). Persist config. - Ask one question you actually ask Perplexity. Confirm citations. Write AGENT_PROMPT.md. - Do not claim Perplexity Pro indexes or every focus mode.
Also as markdown: /stacks/perplexica-search.md
FAQ
- Why not just Open WebUI?
- Open WebUI is chat (/replace/chatgpt). Perplexity is search-then-answer with citations. Perplexica is that job.
- Do I still pay a model?
- If you route to a hosted model, yes. Local Ollama is the other path. SearXNG is the search, not the LLM.