No description
This repository has been archived on 2026-06-30. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
  • Vue 47.9%
  • PHP 32%
  • JavaScript 17.9%
  • Makefile 1%
  • SCSS 0.6%
  • Other 0.6%
Find a file
2021-10-17 10:18:15 +02:00
.tx Initial commit 2020-12-06 17:48:02 +01:00
appinfo switch donation address in readme 2021-10-16 12:17:53 +02:00
css restyle header with icon 2021-03-21 11:41:49 +01:00
dist update screenshots 2021-02-27 15:21:10 +01:00
img restyle header with icon 2021-03-21 11:41:49 +01:00
l10n beginning to implement export podcast subscriptions 2021-03-15 11:21:12 +01:00
lib fix episode db entry to match mysql db restrictions 2021-04-07 11:50:00 +02:00
src trying to fix gitlab-ci 2021-10-17 10:18:15 +02:00
templates update copyright year, add store module for shows 2021-01-05 15:32:45 +01:00
translationfiles beginning to implement export podcast subscriptions 2021-03-15 11:21:12 +01:00
.editorconfig Initial commit 2020-12-06 17:48:02 +01:00
.eslintrc.js Initial commit 2020-12-06 17:48:02 +01:00
.gitignore Fix loading of JS and CSS 2021-10-17 09:17:59 +02:00
.gitlab-ci.yml trying to fix gitlab-ci 2021-10-17 10:18:15 +02:00
.l10nignore Initial commit 2020-12-06 17:48:02 +01:00
.nextcloudignore trying to fix gitlab-ci 2021-10-17 09:58:25 +02:00
.npmignore Initial commit 2020-12-06 17:48:02 +01:00
babel.config.js Initial commit 2020-12-06 17:48:02 +01:00
CHANGELOG.md switch donation address in readme 2021-10-16 12:17:53 +02:00
composer.json renamed app to podcast 2020-12-08 13:52:06 +01:00
COPYING Initial commit 2020-12-06 17:48:02 +01:00
krankerl.toml Initial commit 2020-12-06 17:48:02 +01:00
Makefile switch to pnpm and update dependencies 2021-10-15 12:21:12 +02:00
package-lock.json bugfix release v0.3.1 2021-04-07 11:54:22 +02:00
package.json switch donation address in readme 2021-10-16 12:17:53 +02:00
pnpm-lock.yaml switch donation address in readme 2021-10-16 12:17:53 +02:00
postcss.config.js Initial commit 2020-12-06 17:48:02 +01:00
README.md switch donation address in readme 2021-10-16 12:17:53 +02:00
Release.md initial release v0.1 2021-01-14 13:44:44 +01:00
stylelint.config.js Initial commit 2020-12-06 17:48:02 +01:00
tsconfig.json trying to fix gitlab-ci 2021-10-17 09:58:25 +02:00
webpack.js Fix loading of JS and CSS 2021-10-17 09:17:59 +02:00

Nextcloud Podcast app

Browse, listen and subscribe to podcasts inside of Nextcloud. The podcast app uses the directory fyyd.de as a source.

Features

  • Browse podcasts and play them directly in Nextcloud
  • Keep track of subscribed shows and episodes
  • Check newly released episodes
  • Support for chapters in episodes
  • Support for links and timecodes in episode notes
  • Import and export subscriptions
  • Mobile friendly interface
  • Unified search integration
  • Dashboard integration

Maintainers

Installation

From the appstore

The most recent and stable version of the app can be found in the official appstore. For ArchLinux, there is an AUR package available.

From source

Clone the development repository with:

git clone https://git.project-insanity.org/onny/nextcloud-app-podcast.git podcast

Then run following commands to compile the project:

cd podcast
make dev-setup
make build-js

Mount or move the podcast folder into your Nextcloud apps/ directory. Go to the apps manager tab in your Nextcloud web interface, and enable the Podcast app.

Adding podcast shows

This app uses a public and open database of podcasts as its backend called fyyd. If you want a specific podcast listed in the app, you have to submit it first there.

Testing

Can be easily tested using Docker:

docker build https://git.project-insanity.org/onny/docker-nextcloud.git nextcloud
docker run -v /tmp/nextcloud-app-podcast:/opt/nextcloud/apps/podcast -d --name nextcloud-app-podcast -p 80:80 nextcloud

First part of -v is the path to the cloned and compiled or downloaded Nextcloud Podcast app. Debug running container it with:

docker exec -i -t 665b4a1e17b6 /bin/bash

Where -t specifies the container id. If you further need to access the sqlite-database, logs or files inside the data folder of Nextcloud, that you also have to share this folder with the host:

docker run -v /tmp/dockerdata:/data/data -v /tmp/nextcloud-app-podcast:/opt/nextcloud/apps/podcast -d --name nextcloud -p 80:80 rootlogin/nextcloud

To manually test unstable Nextcloud or PHP versions, you can do this:

git clone https://git.project-insanity.org/onny/docker-nextcloud.git
docker build -t nextcloud-21 .
docker run -v /tmp/nextcloud-app-podcast:/opt/nextcloud/apps/podcast -d --name nextcloud-app-podcast-21 -p 80:80 nextcloud-21

Development notes

General

While editing the code, you could run following helper script to automatically compile the project:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p # ref: https://github.com/gatsbyjs/gatsby/issues/11406
make watch-js

Seeing PHP and server error logs is possible with following command:

docker logs <CONTAINERID>

Translations

Manually generate translations. The following commands will require the dependency packages gettext and php.

cd nextcloud-app-podcast
git clone https://github.com/nextcloud/docker-ci.git utils/docker-ci
make translations

Use the source file translationfiles/template/podcast.pot to create translations. For example, contribute translations via Transifex.

Put the translated language file into the corresponding template folder. For example the German language file should be placed at translationfiles/de/podcast.po. Run make translations again.

Prepare a release

Consoult Release.md on how to prepare a release for Gitlab and the app store.

Contribute

Reporting bugs

You can report bugs in the public gitlab repository here and for discussion you can find a section for the app in the offical Nextcloud forums here.

Adding translations

For now only German translations are provided, so please submit your translations if possible :) It's really easy, just git clone this repo and copy the translation files in l10n according to your locale. Merge requests go to this podcast repository.

Donation

If you like this app and want to support my work, you can donate to this MobileCoin address:

v2Z6pvq2zWLmQeP1ywxe9G4k3wQqbxrNvLk8zF1XVJjkvyd3dVjJmyHysyG1hHehiPPyKFkgoPHHBRGnDp4CzpJUxd2g5vWcTvfHukMy7iQaVEgkeErWkQnzey3ArnAPMhMB6DJYkqYQ2DjYNAwqFBvrS3rjiBEgo9aM6LEUuJmeckai9UTaKA9g9sH8k5TwKUMmmLx35Y3gn8zGMVsWxc8e2UuLRho9Gwvs4eiMmV634QkKLASxtYq24SbzxPdc9p

Credits

  • fyyd.de database api as backend for this app
  • App logo is taken from svgrepo.com and licensed under MIT