| bin | ||
| docker | ||
| public | ||
| src | ||
| views | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| compose.yml | ||
| composer.json | ||
| composer.lock | ||
| 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.exampleto.envand edit the values - Run
php bin/doctrine orm:schema-tool:createto create the database
Running locally
- Run
php -S localhost:8000to start the web server
Running tests
- Run
php vendor/bin/phpunitto 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"'