parent
5248989b08
commit
e12f024c5d
|
@ -78,6 +78,7 @@ This is the official repository for the Tipi App Store. It contains all the apps
|
|||
- [Photoprism](https://github.com/photoprism/photoprism) - AI-Powered Photos App for the Decentralized Web. We are on a mission to protect your freedom and privacy.
|
||||
- [Pihole](https://github.com/pi-hole/pi-hole) - A black hole for Internet advertisements
|
||||
- [Plex](https://github.com/plexinc/pms-docker) - Stream Movies & TV Shows
|
||||
- [PodFetch](https://github.com/SamTV12345/PodFetch) - A sleek and efficient podcast downloader.
|
||||
- [Portainer](https://github.com/portainer/portainer) - Making Docker and Kubernetes management easy.
|
||||
- [PrivateBin](https://github.com/PrivateBin/PrivateBin) - A minimalist, open source online pastebin where the server has zero knowledge of pasted data
|
||||
- [Prowlarr](https://github.com/Prowlarr/Prowlarr/) - A torrent/usenet indexer manager/proxy
|
||||
|
|
49
apps/podfetch/config.json
Normal file
49
apps/podfetch/config.json
Normal file
|
@ -0,0 +1,49 @@
|
|||
{
|
||||
"$schema": "../schema.json",
|
||||
"name": "PodFetch",
|
||||
"port": 8177,
|
||||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "podfetch",
|
||||
"tipi_version": 1,
|
||||
"version": "v2:latest",
|
||||
"categories": ["media"],
|
||||
"description": "A sleek and efficient podcast downloader.",
|
||||
"short_desc": "A sleek and efficient podcast downloader.",
|
||||
"author": "SamTV12345",
|
||||
"source": "https://github.com/SamTV12345/PodFetch",
|
||||
"form_fields": [
|
||||
{
|
||||
"type": "text",
|
||||
"label": "PodFetch Username",
|
||||
"max": 50,
|
||||
"min": 3,
|
||||
"required": true,
|
||||
"env_variable": "PODFETCH_USERNAME"
|
||||
},
|
||||
{
|
||||
"type": "password",
|
||||
"label": "PodFetch Password",
|
||||
"max": 50,
|
||||
"min": 8,
|
||||
"required": true,
|
||||
"env_variable": "PODFETCH_PASSWORD"
|
||||
},
|
||||
{
|
||||
"type": "text",
|
||||
"label": "Podcast Index API Key",
|
||||
"hint": "The API key sent to you via mail",
|
||||
"placeholder": "",
|
||||
"required": false,
|
||||
"env_variable": "PODFETCH_PODINDEX_API_KEY"
|
||||
},
|
||||
{
|
||||
"type": "text",
|
||||
"label": "Podcast Index API Secret",
|
||||
"hint": "The API secret sent to you via mail",
|
||||
"placeholder": "",
|
||||
"required": false,
|
||||
"env_variable": "PODFETCH_PODINDEX_API_SECRET"
|
||||
}
|
||||
]
|
||||
}
|
30
apps/podfetch/docker-compose.yml
Normal file
30
apps/podfetch/docker-compose.yml
Normal file
|
@ -0,0 +1,30 @@
|
|||
version: "3"
|
||||
|
||||
services:
|
||||
podfetch:
|
||||
container_name: podfetch
|
||||
image: samuel19982/podgrabv2:latest
|
||||
ports:
|
||||
- ${APP_PORT}:8000
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/data/podfetch-db:/app/db
|
||||
- ${ROOT_FOLDER_HOST}/media/data/podcasts:/app/podcasts
|
||||
environment:
|
||||
- BASIC_AUTH=true
|
||||
- USERNAME=${PODFETCH_USERNAME}
|
||||
- PASSWORD=${PODFETCH_PASSWORD}
|
||||
- POLLING_INTERVAL=60
|
||||
- SERVER_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
|
||||
- PODINDEX_API_KEY="${PODFETCH_PODINDEX_API_KEY}"
|
||||
- PODINDEX_API_SECRET="${PODFETCH_PODINDEX_API_SECRET}"
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
traefik.enable: ${APP_EXPOSED}
|
||||
traefik.http.routers.podfetch.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.podfetch.entrypoints: websecure
|
||||
traefik.http.routers.podfetch.service: podfetch
|
||||
traefik.http.routers.podfetch.tls.certresolver: myresolver
|
||||
traefik.http.services.podfetch.loadbalancer.server.port: 8000
|
||||
|
61
apps/podfetch/metadata/description.md
Normal file
61
apps/podfetch/metadata/description.md
Normal file
|
@ -0,0 +1,61 @@
|
|||
Podfetch is a self-hosted podcast manager. It is a web app that lets you download podcasts and listen to them online. It is written in Rust and uses React for the frontend.
|
||||
|
||||
Every time a new commit is pushed to the main branch, a new docker image is built and pushed to docker hub. So it is best to use something like [watchtower](https://github.com/containrrr/watchtower) to automatically update the docker image.
|
||||
|
||||
|
||||
# API Info
|
||||
|
||||
Sign up for an [Podcast Index](https://api.podcastindex.org/signup) account to get an API key.
|
||||
---
|
||||
|
||||
## Folder Info
|
||||
|
||||
| Root Folder | Container Folder |
|
||||
|---------------------------------------------|------------------|
|
||||
| /runtipi/app-data/podfetch/data/podfetch-db | /app/db |
|
||||
| /runtipi/media/data/podcasts:/app/podcasts | /app/podcasts |
|
||||
|
||||
---
|
||||
|
||||
## UI
|
||||
|
||||
## [](https://github.com/SamTV12345/PodFetch#audio-player)Audio Player
|
||||
|
||||
The podcast listening tool contains an advanced audio player that can be used to listen to your podcasts,skip episodes, turn the volumes as high as 300% or skip around in the current episode. [![Audio Player](https://raw.githubusercontent.com/SamTV12345/podgrabv2/main/docs/advanced_audio_player.png)](https://raw.githubusercontent.com/SamTV12345/podgrabv2/main/docs/advanced_audio_player.png)
|
||||
|
||||
# [](https://github.com/SamTV12345/PodFetch#continue-right-where-you-stopped)Continue right where you stopped
|
||||
|
||||
The tool will automatically save your progress in the current episode and will resume from where you left off even if you close the browser. You can continue listening on all devices by just hitting play on any episode on your home screen.
|
||||
|
||||
[![Continue listening to episodes](https://raw.githubusercontent.com/SamTV12345/podgrabv2/main/docs/continue_listening.png)](https://raw.githubusercontent.com/SamTV12345/podgrabv2/main/docs/continue_listening.png)
|
||||
|
||||
## [](https://github.com/SamTV12345/PodFetch#search-for-podcasts)Search for podcasts
|
||||
|
||||
You can search for podcast episodes by hitting CTRL+F and typing any word that might appear in the description or title of the podcast episode you want to listen to. [![Audio Player](https://raw.githubusercontent.com/SamTV12345/podgrabv2/main/docs/search.png)](https://raw.githubusercontent.com/SamTV12345/podgrabv2/main/docs/search.png)
|
||||
|
||||
## [](https://github.com/SamTV12345/PodFetch#internationalization)Internationalization
|
||||
|
||||
Podfetch is currently available in English and German. If you want to add a new language you can do so by adding a new file to the `i18n` folder and adding the translations to the file.
|
||||
|
||||
# [](https://github.com/SamTV12345/PodFetch#rss-feed)RSS feed
|
||||
|
||||
Podfetch offers an own feed to download podcast episodes. You can add the url <SERVER\_URL>/rss to your favorite podcast app like gPodder to download and play episodes.
|
||||
s
|
||||
# [](https://github.com/SamTV12345/PodFetch#roadmap)Roadmap
|
||||
|
||||
- [x] Add podcasts via Itunes API
|
||||
- [x] Check for new episodes.
|
||||
- [x] Download episodes.
|
||||
- [x] Play episodes.
|
||||
- [x] Force refresh download of podcast episodes.
|
||||
- [x] Force refresh of podcast episodes.
|
||||
- [x] Resume podcasts even if browser is closed.
|
||||
- [x] Add websocket support for new podcasts.
|
||||
- [x] Add detailed audio player.
|
||||
- [x] Star podcasts.
|
||||
- [x] Unsubscribe podcasts.
|
||||
- [x] Add retrieving podcasts from Podcastindex.org.
|
||||
- [x] Basic Auth.
|
||||
- [x] Import from OPML file.
|
||||
- [ ] Like episodes.
|
||||
- [ ] Delete podcasts.
|
BIN
apps/podfetch/metadata/logo.jpg
Normal file
BIN
apps/podfetch/metadata/logo.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
Loading…
Reference in New Issue
Block a user