├── .dockerignore ├── .github ├── FUNDING.yml ├── dependabot.yml └── workflows │ ├── ci.yml │ ├── nightly.yml │ └── release.yml ├── .gitignore ├── .golangci.yml ├── .goreleaser.yml ├── .vscode └── launch.json ├── AGENTS.md ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── README_CN.md ├── cloud_formation.yml ├── cmd └── podsync │ ├── config.go │ ├── config_test.go │ └── main.go ├── config.toml.example ├── docker-compose.yml ├── docs ├── cron.md ├── how_to_get_vimeo_token.md ├── how_to_get_youtube_api_key.md ├── how_to_setup_podsync_on_qnap_nas.md ├── how_to_setup_podsync_on_synology_nas.md └── img │ ├── logo.png │ ├── vimeo_access_token.png │ ├── vimeo_create_app.png │ ├── vimeo_token.png │ ├── youtube_copy_token.png │ ├── youtube_create_api_key.png │ ├── youtube_dashboard.png │ ├── youtube_data_api_enable.png │ ├── youtube_data_api_v3.png │ ├── youtube_new_project.png │ └── youtube_select_project.png ├── go.mod ├── go.sum ├── html └── index.html ├── pkg ├── builder │ ├── bilibili.go │ ├── bilibili_api.go │ ├── bilibili_test.go │ ├── builder.go │ ├── soundcloud.go │ ├── soundcloud_test.go │ ├── twitch.go │ ├── twitch_test.go │ ├── url.go │ ├── url_test.go │ ├── vimeo.go │ ├── vimeo_test.go │ ├── youtube.go │ └── youtube_test.go ├── db │ ├── badger.go │ ├── badger_test.go │ ├── config.go │ └── storage.go ├── feed │ ├── config.go │ ├── deps.go │ ├── deps_mock_test.go │ ├── hooks.go │ ├── hooks_test.go │ ├── key.go │ ├── key_test.go │ ├── opml.go │ ├── opml_test.go │ ├── xml.go │ └── xml_test.go ├── fs │ ├── local.go │ ├── local_test.go │ ├── s3.go │ ├── s3_test.go │ └── storage.go ├── model │ ├── defaults.go │ ├── errors.go │ ├── feed.go │ └── link.go └── ytdl │ ├── temp_file.go │ ├── ytdl.go │ └── ytdl_test.go └── services ├── update ├── matcher.go └── updater.go └── web └── server.go /.dockerignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | node_modules/ 3 | vendor/ 4 | bin/ -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/nightly.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.github/workflows/nightly.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.gitignore -------------------------------------------------------------------------------- /.golangci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.golangci.yml -------------------------------------------------------------------------------- /.goreleaser.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.goreleaser.yml -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /AGENTS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/AGENTS.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/README.md -------------------------------------------------------------------------------- /README_CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/README_CN.md -------------------------------------------------------------------------------- /cloud_formation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/cloud_formation.yml -------------------------------------------------------------------------------- /cmd/podsync/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/cmd/podsync/config.go -------------------------------------------------------------------------------- /cmd/podsync/config_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/cmd/podsync/config_test.go -------------------------------------------------------------------------------- /cmd/podsync/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/cmd/podsync/main.go -------------------------------------------------------------------------------- /config.toml.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/config.toml.example -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/cron.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/cron.md -------------------------------------------------------------------------------- /docs/how_to_get_vimeo_token.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/how_to_get_vimeo_token.md -------------------------------------------------------------------------------- /docs/how_to_get_youtube_api_key.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/how_to_get_youtube_api_key.md -------------------------------------------------------------------------------- /docs/how_to_setup_podsync_on_qnap_nas.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/how_to_setup_podsync_on_qnap_nas.md -------------------------------------------------------------------------------- /docs/how_to_setup_podsync_on_synology_nas.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/how_to_setup_podsync_on_synology_nas.md -------------------------------------------------------------------------------- /docs/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/logo.png -------------------------------------------------------------------------------- /docs/img/vimeo_access_token.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/vimeo_access_token.png -------------------------------------------------------------------------------- /docs/img/vimeo_create_app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/vimeo_create_app.png -------------------------------------------------------------------------------- /docs/img/vimeo_token.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/vimeo_token.png -------------------------------------------------------------------------------- /docs/img/youtube_copy_token.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_copy_token.png -------------------------------------------------------------------------------- /docs/img/youtube_create_api_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_create_api_key.png -------------------------------------------------------------------------------- /docs/img/youtube_dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_dashboard.png -------------------------------------------------------------------------------- /docs/img/youtube_data_api_enable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_data_api_enable.png -------------------------------------------------------------------------------- /docs/img/youtube_data_api_v3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_data_api_v3.png -------------------------------------------------------------------------------- /docs/img/youtube_new_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_new_project.png -------------------------------------------------------------------------------- /docs/img/youtube_select_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/docs/img/youtube_select_project.png -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/go.sum -------------------------------------------------------------------------------- /html/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/html/index.html -------------------------------------------------------------------------------- /pkg/builder/bilibili.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/bilibili.go -------------------------------------------------------------------------------- /pkg/builder/bilibili_api.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/bilibili_api.go -------------------------------------------------------------------------------- /pkg/builder/bilibili_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/bilibili_test.go -------------------------------------------------------------------------------- /pkg/builder/builder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/builder.go -------------------------------------------------------------------------------- /pkg/builder/soundcloud.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/soundcloud.go -------------------------------------------------------------------------------- /pkg/builder/soundcloud_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/soundcloud_test.go -------------------------------------------------------------------------------- /pkg/builder/twitch.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/twitch.go -------------------------------------------------------------------------------- /pkg/builder/twitch_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/twitch_test.go -------------------------------------------------------------------------------- /pkg/builder/url.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/url.go -------------------------------------------------------------------------------- /pkg/builder/url_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/url_test.go -------------------------------------------------------------------------------- /pkg/builder/vimeo.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/vimeo.go -------------------------------------------------------------------------------- /pkg/builder/vimeo_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/vimeo_test.go -------------------------------------------------------------------------------- /pkg/builder/youtube.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/youtube.go -------------------------------------------------------------------------------- /pkg/builder/youtube_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/builder/youtube_test.go -------------------------------------------------------------------------------- /pkg/db/badger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/db/badger.go -------------------------------------------------------------------------------- /pkg/db/badger_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/db/badger_test.go -------------------------------------------------------------------------------- /pkg/db/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/db/config.go -------------------------------------------------------------------------------- /pkg/db/storage.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/db/storage.go -------------------------------------------------------------------------------- /pkg/feed/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/config.go -------------------------------------------------------------------------------- /pkg/feed/deps.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/deps.go -------------------------------------------------------------------------------- /pkg/feed/deps_mock_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/deps_mock_test.go -------------------------------------------------------------------------------- /pkg/feed/hooks.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/hooks.go -------------------------------------------------------------------------------- /pkg/feed/hooks_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/hooks_test.go -------------------------------------------------------------------------------- /pkg/feed/key.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/key.go -------------------------------------------------------------------------------- /pkg/feed/key_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/key_test.go -------------------------------------------------------------------------------- /pkg/feed/opml.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/opml.go -------------------------------------------------------------------------------- /pkg/feed/opml_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/opml_test.go -------------------------------------------------------------------------------- /pkg/feed/xml.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/xml.go -------------------------------------------------------------------------------- /pkg/feed/xml_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/feed/xml_test.go -------------------------------------------------------------------------------- /pkg/fs/local.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/fs/local.go -------------------------------------------------------------------------------- /pkg/fs/local_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/fs/local_test.go -------------------------------------------------------------------------------- /pkg/fs/s3.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/fs/s3.go -------------------------------------------------------------------------------- /pkg/fs/s3_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/fs/s3_test.go -------------------------------------------------------------------------------- /pkg/fs/storage.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/fs/storage.go -------------------------------------------------------------------------------- /pkg/model/defaults.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/model/defaults.go -------------------------------------------------------------------------------- /pkg/model/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/model/errors.go -------------------------------------------------------------------------------- /pkg/model/feed.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/model/feed.go -------------------------------------------------------------------------------- /pkg/model/link.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/model/link.go -------------------------------------------------------------------------------- /pkg/ytdl/temp_file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/ytdl/temp_file.go -------------------------------------------------------------------------------- /pkg/ytdl/ytdl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/ytdl/ytdl.go -------------------------------------------------------------------------------- /pkg/ytdl/ytdl_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/pkg/ytdl/ytdl_test.go -------------------------------------------------------------------------------- /services/update/matcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/services/update/matcher.go -------------------------------------------------------------------------------- /services/update/updater.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/services/update/updater.go -------------------------------------------------------------------------------- /services/web/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangtfu/podsync/HEAD/services/web/server.go --------------------------------------------------------------------------------