Package to set up and manage the Live Stream for Saint Joseph Church Lincoln Park NJ
To reduce the manual steps involved with setting up a Scheduled Live Stream which includes the Readings, I came up with this app to sources the Readings from catholic-mass-readings package, then utilizing the YouTube Data API v3 to insert (or update) the masses on the YouTube Channel. Through the CLI below, I can schedule the masses for the entire year (only what is available via the Readings website) within a matter of seconds.
Run scripts/lock.sh
Run scripts/console.sh uv run python -m stjoseph
As a CLI
To schedule a mass:
python -m stjoseph schedule-mass '2026-01-03 17:30' --publicTo schedule Sunday masses a month in advance:
python -m stjoseph schedule-masses --public --end $(date -d "+1 month" +%Y-%m-%d)To schedule all Sunday masses up to a year:
python -m stjoseph schedule-masses --publicTo schedule the Christ Pageant:
(Schedules the Christmas Pageant at 4:00 PM.)
python -m stjoseph schedule-christmas-pageant $(date '+%Y-12-24 15:55') --schedule-end $(date '+%Y-12-24 16:30') --publicTo schedule the Christ Pageant mass:
(Schedules the mass on Christmas Eve at 4:30 PM using the Readings for the Christmas Mass during the Night.)
python -m stjoseph schedule-mass "$(date '+%Y-12-24 16:30')" --mass-date "$(date '+%Y-12-25')" --schedule-end "$(date '+%Y-12-24 17:30')" --public --type nightTo schedule the New Year Day mass (Solemnity of Mary, the Holy Mother of God):
python -m stjoseph schedule-mass "$(date '+%Y-01-01 10:00')" --mass-date "$(date '+%Y-01-01')" --schedule-end "$(date '+%Y-01-01 11:00')" --publicTo list masses that were scheduled but for whatever reason didn't air or were cut off after a short amount of time (under 15 minutes), then these are eligible for deletion:
python -m stjoseph list-eligible-for-deletionTo actually remove them:
python -m stjoseph delete-eligible --no-dry-runor through the launcher...
scripts/launch.sh schedule-mass '2026-12-21 17:30' --publicTo schedule Sunday masses a month in advance:
scripts/launch.sh schedule-masses --public --end "$(date -d '+1 month' +%Y-%m-%d)"To schedule all Sunday masses up to a year:
scripts/launch.sh schedule-masses --publicTo schedule the Christ Pageant:
(Schedules the Christmas Pageant at 4:00 PM.)
scripts/launch.sh schedule-christmas-pageant "$(date '+%Y-12-24 15:55')" --schedule-end "$(date '+%Y-12-24 16:30')" --publicTo schedule the Christ Pageant mass:
(Schedules the mass on Christmas Eve at 4:30 PM using the Readings for the Christmas Mass during the Night.)
scripts/launch.sh schedule-mass "$(date '+%Y-12-24 16:30')" --mass-date "$(date '+%Y-12-25')" --schedule-end "$(date '+%Y-12-24 17:30')" --public --type nightTo schedule the New Year Day mass (Solemnity of Mary, the Holy Mother of God):
scripts/launch.sh schedule-mass "$(date '+%Y-01-01 10:00')" --mass-date "$(date '+%Y-01-01')" --schedule-end "$(date '+%Y-01-01 11:00')" --public