Skip to content

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
Step-by-step guide: how to use PanSouInstall, first run, examples, tips and FAQs

How to get it

  1. 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:latest

    Run the front-end and back-end bundled version with Docker

    docker run -d --name pansou -p 80:80 ghcr.io/fish2018/pansou-web
  2. 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. 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.