Custom RSS feeds #34

Open
opened 2025-07-09 23:34:05 +02:00 by myrmidex · 0 comments
myrmidex commented 2025-07-09 23:34:05 +02:00 (Migrated from codeberg.org)

Summary

Allow users to add custom RSS feeds beyond the pre-configured providers (VRT, Belga, Guardian).

Context

Currently feeds are tied to a provider config key (vrt, belga, guardian) which maps to specific parser classes. Users should be able to add any RSS feed URL without needing a custom parser — the generic RSS parsing infrastructure from #37 handles this.

Scope

  • RSS feeds only (no website scraping for custom feeds)
  • Two "system feeds" shipped via seeder (e.g. VRT, Guardian) that can't be deleted
  • User-added feeds are "custom" type — fully manageable (create, edit, delete)

Tasks

  • Add is_system flag (or feed_type column: system/custom) to feeds table
  • Migration to mark existing seeded feeds as system feeds
  • Seeder updates to set system flag on default feeds
  • Prevent deletion of system feeds (API + UI)
  • UI for adding custom RSS feeds: URL input, name, language selection
  • Validate RSS feed URL on creation (attempt fetch, confirm valid XML/RSS)
  • Custom feeds use generic RSS parser (no provider-specific parser needed)
  • Update feed CRUD endpoints to handle custom feeds
  • Tests for custom feed creation, validation, and deletion protection
## Summary Allow users to add custom RSS feeds beyond the pre-configured providers (VRT, Belga, Guardian). ## Context Currently feeds are tied to a `provider` config key (vrt, belga, guardian) which maps to specific parser classes. Users should be able to add any RSS feed URL without needing a custom parser — the generic RSS parsing infrastructure from #37 handles this. ## Scope - RSS feeds only (no website scraping for custom feeds) - Two "system feeds" shipped via seeder (e.g. VRT, Guardian) that can't be deleted - User-added feeds are "custom" type — fully manageable (create, edit, delete) ## Tasks - [ ] Add `is_system` flag (or `feed_type` column: system/custom) to feeds table - [ ] Migration to mark existing seeded feeds as system feeds - [ ] Seeder updates to set system flag on default feeds - [ ] Prevent deletion of system feeds (API + UI) - [ ] UI for adding custom RSS feeds: URL input, name, language selection - [ ] Validate RSS feed URL on creation (attempt fetch, confirm valid XML/RSS) - [ ] Custom feeds use generic RSS parser (no provider-specific parser needed) - [ ] Update feed CRUD endpoints to handle custom feeds - [ ] Tests for custom feed creation, validation, and deletion protection
myrmidex changed title from Custom feeds to Custom RSS feeds 2026-03-08 17:28:05 +01:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lvl0/fedi-feed-router#34
No description provided.