bin | ||
docker | ||
public | ||
src | ||
views | ||
.dockerignore | ||
.env.example | ||
.gitignore | ||
composer.json | ||
composer.lock | ||
docker-compose.yaml | ||
feed_filtered.xml | ||
nixpacks.toml | ||
README.md |
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
- Run
composer install
- Copy
.env.example
to.env
and edit the values - Run
php bin/doctrine orm:schema-tool:create
to create the database
Running locally
- Run
php -S localhost:8000
to start the web server
Running tests
- 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"'