
PanSou
A self-hostable API that searches Chinese cloud-drive share links across Telegram channels and plugins.
- Stars
- 15.1k
- Forks
- 3.7k
- Licence
- MIT
- Language
- Go
- Last update
- 25 days ago
- Type
- App
What it is
PanSou is a search service that looks for cloud-drive resource links (such as Baidu, Aliyun, Quark and 115 drives) across Telegram channels and custom plugins, then returns and sorts the results. It is offered as a web API, and Docker images are provided that bundle a front end. The project states it is for study and research only and must not be used for profit.
- Run the Docker image and call the search endpoint with a keyword such as a movie title
- Restrict searches to specific Telegram channels using the CHANNELS setting
- Enable a subset of plugins with ENABLED_PLUGINS
- Turn on token-based authentication with AUTH_ENABLED to protect the API
- Write a custom plugin using the plugin development guide
Great for
- Developers who want a self-hosted search API for cloud-drive share links
- People running a private search service who are comfortable with Docker or Go
- Developers interested in writing search plugins for the project
- Users in regions where Telegram needs a SOCKS5 or HTTP proxy, if they can configure one
Not ideal for
- Anyone wanting a hosted service without setup, since it must be deployed and configured yourself
- Commercial projects, because the description explicitly prohibits profit-making use
- Users who need guaranteed or legal-content results, since the README does not address content sources or legality beyond the study-use notice
How to get it
- 1
Run with Docker
You'll need: Docker
Run the back-end API version with Docker
docker run -d --name pansou -p 8888:8888 ghcr.io/fish2018/pansou:latestRun the front-end and back-end bundled version with Docker
docker run -d --name pansou -p 80:80 ghcr.io/fish2018/pansou-web - 2
Run it
- Start the container using one of the docker run commands above
- For the API-only version, open http://localhost:8888 to confirm the service is running
- For the bundled version, open http://localhost:80 in a browser
- Send a search request to /api/search with a JSON body such as {"kw":"keyword"}
- If authentication is enabled, log in first at /api/auth/login and pass the token in the Authorization header
- 3
Get the most out of it
- Set CHANNELS to choose which Telegram channels are searched
- Set ENABLED_PLUGINS explicitly, since the README says plugins must be specified to be enabled
- Use PROXY or HTTPS_PROXY if Telegram is not reachable from your network
- Enable AUTH_ENABLED and set AUTH_JWT_SECRET to protect the API
- Read the plugin development guide if you want to add new search sources
Downloads
Strengths
- Supports concurrent searching across multiple Telegram channels and plugins
- Groups results by cloud-drive type and sorts them using plugin level, freshness and priority keywords
- Offers Docker images for quick setup, plus a source build path
Trade-offs
- The README is truncated and does not explain legal or content-source considerations beyond a study-use notice
- Relies on third-party Telegram channels and plugins whose availability can change, which the README does not discuss in detail
- Many configuration options; the defaults are described as usually sufficient but some settings need care
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.