Go to file
2024-11-21 10:30:05 +00:00
bin Add docker compose config with Postgres 2024-11-15 11:24:21 +00:00
docker Add docker compose config with Postgres 2024-11-15 11:24:21 +00:00
public Move index.php to /public dir, so that I can isolate the file access 2024-10-22 13:18:40 +01:00
src Add docker compose config with Postgres 2024-11-15 11:24:21 +00:00
views Initial commit 2024-08-30 13:28:30 +01:00
.dockerignore Add docker compose config with Postgres 2024-11-15 11:24:21 +00:00
.env.example Use DB_CONNECTION string instead of SQLITE_DB_NAME 2024-11-02 13:55:15 +00:00
.gitignore Add docker compose config with Postgres 2024-11-15 11:24:21 +00:00
compose.yml Update compose to work in coolify 2024-11-21 10:30:05 +00:00
composer.json Add PHP version to composer.json 2024-10-22 12:04:51 +01:00
composer.lock Stuff 2024-09-17 21:52:08 +01:00
feed_filtered.xml Update compose to work in coolify 2024-11-21 10:30:05 +00:00
nixpacks.toml Move index.php to /public dir, so that I can isolate the file access 2024-10-22 13:18:40 +01:00
README.md Add some deployment instructions, and update the schema when starting the PHP container 2024-11-15 11:42:28 +00:00

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"'