1.7 KiB
1.7 KiB
30. Implement Feed Source Management (Add/Remove Sources)
meta: id: podcast-tui-app-30 feature: podcast-tui-app priority: P1 depends_on: [29] tags: [source-management, feeds, solidjs, opentui]
objective:
- Create source management component
- Implement add new source functionality
- Implement remove source functionality
- Manage enabled/disabled sources
deliverables:
src/components/SourceManager.tsxwith source management UIsrc/components/AddSourceForm.tsxwith add source formsrc/components/SourceListItem.tsxwith individual source
steps:
- Create
src/components/SourceManager.tsx:- List of enabled sources
- Add source button
- Remove source button
- Enable/disable toggle
- Source count display
- Create
src/components/AddSourceForm.tsx:- Source name input
- Source URL input
- Source type selection
- API key input (if required)
- Submit button
- Validation
- Create
src/components/SourceListItem.tsx:- Display source info
- Enable/disable toggle
- Remove button
- Status indicator
- Add source manager to settings screen
tests:
- Unit: Test source list displays correctly
- Unit: Test add source form validation
- Unit: Test remove source functionality
- Integration: Test source management workflow
acceptance_criteria:
- Source list displays all sources
- Add source form validates input
- Remove source works correctly
- Enable/disable toggles work
validation:
- Run application and navigate to settings
- Test add source
- Test remove source
- Test enable/disable toggle
- Verify feeds from new sources appear
notes:
- Source types: RSS, API, Custom
- RSS sources: feed URLs
- API sources: require API key
- Custom sources: user-defined
- Add validation for source URLs
- Store sources in localStorage