baleen/README.md

1.2 KiB

Baleen

Podcast & RSS feed filtering

What is it

A little service that takes an RSS feed and allows you to apply filters to the feed items, producing a new RSS feed link.

Why?

Apple Podcasts doesn't have decent filtering/playlist creation tooling, and I wanted to split some of the podcasts I subscribe to into some of the different episode variants they produce.

It's called Baleen, because that's what whales use to filter out the krill from the water.

Installation

  1. Run composer install
  2. Copy .env.example to .env and edit the values
  3. Run php bin/doctrine orm:schema-tool:create to create the database

Running locally

  1. Run php -S localhost:8000 to start the web server

Running tests

  1. Run php vendor/bin/phpunit to run the tests

Running in Docker

There is a supplied compose.yml, so you can run the entire application with docker compose up -d, which will create the database and schema, and run an Nginx server.

To add a feed, get the docker container ID of the PHP container using docker ps, and then use the create feed command:

docker exec fe0bae104040 sh -c 'php bin/doctrine test:feed --filter=include --target=title -a "[No Ads]" -- "<feed url>" "DnD: Just the eps"'