Chuninja is an open-source privacy frontend built around a simple idea: not every search needs the same level of protection.
Sometimes you want the open web without leaking your IP — that's the default Private Web mode, which routes through a self-hosted SearXNG instance. Sometimes you want to pull a document from a curated index without the server knowing which one — that's PIR Vault, built on MIT's SimplePIR and Tiptoe.
And every result opens through Ninja View — a server-side reader proxy that hides your IP from the destination site and renders JS-required pages on our servers.
In feudal Japan, a Chunin (中忍, "middle ninja") was the rank between raw recruit and command. The chunin gathered intelligence while revealing as little as possible to the people and systems watching the route. That's the operating principle here: do the work, leave the lightest possible footprint.
Chuninja sees the URL of every Ninja View request. We do not log it to disk by default; logs are rotated in-memory and dropped on restart. SearXNG stores query logs by default — you should disable that in your deployment. PIR Vault sees your ranking query but not which document you fetched.
If you self-host: every piece of this is auditable Rust + Python. Read the source, change what you don't like, deploy with docker compose up.
MIT. See LICENSE in the repo.