# gaotianliuyun/gao architecture

> Architecture diagram of the GitHub repository gaotianliuyun/gao, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/gaotianliuyun/gao
- Repository: https://github.com/gaotianliuyun/gao

## Overview

This repository is a collection of TVBox/FongMi/CatVod configuration resources and site adapters, not a standalone media player. A user selects a source in a compatible host app; the host runs an adapter to search or browse a catalog, obtain detail and playback links, and pass them to playback. The tree also contains live, audio, and cloud-drive adapters, plus shared runtimes and helpers. The README documents several configuration variants; their JSON files are not in the supplied tree. Some source excerpts are partial or obfuscated, so uncertain internal wiring is omitted.

Main entry points: [`js/JustLive.js`](https://github.com/gaotianliuyun/gao/blob/master/js/JustLive.js) (Live adapters), [`cat/js/pansearch_open.js`](https://github.com/gaotianliuyun/gao/blob/master/cat/js/pansearch_open.js) (CatVod adapters), [`js/模板.js`](https://github.com/gaotianliuyun/gao/blob/master/js/%E6%A8%A1%E6%9D%BF.js) (Video site adapters), [`js/六月听书.js`](https://github.com/gaotianliuyun/gao/blob/master/js/%E5%85%AD%E6%9C%88%E5%90%AC%E4%B9%A6.js) (Audio adapters)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_tvbox["TVBox adapters"]
  node_configs["TVBox configurations"]
  node_vod["Video site adapters<br/>[模板.js]"]
  node_live["Live adapters<br/>[JustLive.js]"]
  node_audio["Audio adapters<br/>[六月听书.js]"]
end

subgraph group_cat["CatVod adapters"]
  node_catapp["CatVod entry<br/>[app.js]"]
  node_catproviders["CatVod adapters<br/>[pansearch_open.js]"]
end

subgraph group_runtime["Runtimes and helpers"]
  node_drpy["drpy engines<br/>[drpy.js]"]
  node_drpy2["drpy2 engine<br/>[drpy2.js]"]
  node_catlibs["CatVod shared libs<br/>[cat.js]"]
  node_ali["AliDrive support<br/>[ali.js]"]
  node_hls["HLS support<br/>[hls.js]"]
  node_similarity["String matching<br/>[mod.js]"]
end

subgraph group_integrations["External services"]
  node_pansearch["Pansearch service"]
  node_liveapi["Live URL service"]
  node_sources["Media source sites"]
  node_cloud["Cloud-drive services"]
end

node_host(("TVBox-compatible app"))
node_player(("Host playback"))

node_host -->|"loads config"| node_configs
node_configs -->|"selects sources"| node_vod
node_configs -->|"selects sources"| node_live
node_configs -->|"selects sources"| node_audio
node_host -->|"runs scripts"| node_drpy
node_host -->|"runs scripts"| node_drpy2
node_vod -->|"requests catalogs"| node_sources
node_live -.->|"gets room links"| node_liveapi
node_live -->|"requests live data"| node_sources
node_audio -->|"requests catalogs"| node_sources
node_vod -->|"returns play links"| node_player
node_live -->|"returns stream links"| node_player
node_audio -->|"returns play links"| node_player
node_host -->|"runs CatVod"| node_catapp
node_catapp -->|"dispatches adapter"| node_catproviders
node_catproviders -->|"uses helpers"| node_catlibs
node_catproviders -->|"searches"| node_pansearch
node_catproviders -->|"uses drive playback"| node_ali
node_ali -.->|"accesses links"| node_cloud
node_catapp -.->|"supports HLS"| node_hls
node_host -->|"plays media"| node_player

click node_vod "https://github.com/gaotianliuyun/gao/blob/master/js/%E6%A8%A1%E6%9D%BF.js"
click node_live "https://github.com/gaotianliuyun/gao/blob/master/js/JustLive.js"
click node_audio "https://github.com/gaotianliuyun/gao/blob/master/js/%E5%85%AD%E6%9C%88%E5%90%AC%E4%B9%A6.js"
click node_drpy "https://github.com/gaotianliuyun/gao/blob/master/lib/drpy.js"
click node_drpy2 "https://github.com/gaotianliuyun/gao/blob/master/lib/drpy2.js"
click node_catapp "https://github.com/gaotianliuyun/gao/blob/master/cat/js/app.js"
click node_catproviders "https://github.com/gaotianliuyun/gao/blob/master/cat/js/pansearch_open.js"
click node_catlibs "https://github.com/gaotianliuyun/gao/blob/master/cat/js/lib/cat.js"
click node_ali "https://github.com/gaotianliuyun/gao/blob/master/cat/js/lib/ali.js"
click node_hls "https://github.com/gaotianliuyun/gao/blob/master/cat/js/lib/hls.js"
click node_similarity "https://github.com/gaotianliuyun/gao/blob/master/lib/mod.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_configs,node_vod,node_live,node_audio toneBlue
class node_catapp,node_catproviders toneAmber
class node_drpy,node_drpy2,node_catlibs,node_ali,node_hls,node_similarity toneMint
class node_pansearch,node_liveapi,node_sources,node_cloud toneRose
class node_host,node_player toneIndigo
```

## Components

### TVBox adapters

- **TVBox configurations**
- [Video site adapters](https://github.com/gaotianliuyun/gao/blob/master/js/%E6%A8%A1%E6%9D%BF.js): `js/模板.js`
- [Live adapters](https://github.com/gaotianliuyun/gao/blob/master/js/JustLive.js): `js/JustLive.js`
- [Audio adapters](https://github.com/gaotianliuyun/gao/blob/master/js/%E5%85%AD%E6%9C%88%E5%90%AC%E4%B9%A6.js): `js/六月听书.js`

### CatVod adapters

- [CatVod entry](https://github.com/gaotianliuyun/gao/blob/master/cat/js/app.js): `cat/js/app.js`
- [CatVod adapters](https://github.com/gaotianliuyun/gao/blob/master/cat/js/pansearch_open.js): `cat/js/pansearch_open.js`

### Runtimes and helpers

- [drpy engines](https://github.com/gaotianliuyun/gao/blob/master/lib/drpy.js): `lib/drpy.js`
- [drpy2 engine](https://github.com/gaotianliuyun/gao/blob/master/lib/drpy2.js): `lib/drpy2.js`
- [CatVod shared libs](https://github.com/gaotianliuyun/gao/blob/master/cat/js/lib/cat.js): `cat/js/lib/cat.js`
- [AliDrive support](https://github.com/gaotianliuyun/gao/blob/master/cat/js/lib/ali.js): `cat/js/lib/ali.js`
- [HLS support](https://github.com/gaotianliuyun/gao/blob/master/cat/js/lib/hls.js): `cat/js/lib/hls.js`
- [String matching](https://github.com/gaotianliuyun/gao/blob/master/lib/mod.js): `lib/mod.js`

### External services

- **Pansearch service**
- **Live URL service**
- **Media source sites**
- **Cloud-drive services**

### Other components

- **TVBox-compatible app**
- **Host playback**

## Connections

- TVBox-compatible app → TVBox configurations: loads config
- TVBox configurations → Video site adapters: selects sources
- TVBox configurations → Live adapters: selects sources
- TVBox configurations → Audio adapters: selects sources
- TVBox-compatible app → drpy engines: runs scripts
- TVBox-compatible app → drpy2 engine: runs scripts
- Video site adapters → Media source sites: requests catalogs
- Live adapters → Live URL service: gets room links
- Live adapters → Media source sites: requests live data
- Audio adapters → Media source sites: requests catalogs
- Video site adapters → Host playback: returns play links
- Live adapters → Host playback: returns stream links
- Audio adapters → Host playback: returns play links
- TVBox-compatible app → CatVod entry: runs CatVod
- CatVod entry → CatVod adapters: dispatches adapter
- CatVod adapters → CatVod shared libs: uses helpers
- CatVod adapters → Pansearch service: searches
- CatVod adapters → AliDrive support: uses drive playback
- AliDrive support → Cloud-drive services: accesses links
- CatVod entry → HLS support: supports HLS
- TVBox-compatible app → Host playback: plays media
