diora-web/feeds/urls.py
mrwnslz 08baf970ca Feed-Reader (Server): Nachrichten und Blogs, Volltext, Meldungen bündeln
Neue App feeds: Quellen sind entweder Nachrichten oder Blog.
- Abruf wie bei Podcasts (ETag, Body-Hash, Backoff), refresh_newsfeeds für den Cron
- Anrisstexte: der Artikel wird von der Seite geholt (trafilatura), HTML bereinigt,
  relative Links absolut
- Nachrichten: gleiche Meldung aus mehreren Quellen wird eine Story (tf-idf, je
  Artikel verglichen), Briefing „Seit letztem Mal“ (Top-Themen, dann nach Ressort),
  verfallen nach news_keep_days (Standard 2)
- Blogs: Ungelesen-Liste je Blog, bleiben bis gelesen
- API unter /feeds/: Quellen suchen/abonnieren/OPML, News, Stories, Blogs,
  Artikel, gelesen, merken

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:57:23 +02:00

24 lines
1.2 KiB
Python

from django.urls import path
from . import views
urlpatterns = [
path('state/', views.state, name='feeds_state'),
path('discover/', views.discover, name='feeds_discover'),
path('sources/add/', views.add_source, name='feeds_add_source'),
path('sources/bulk/', views.add_sources, name='feeds_add_sources'),
path('sources/<int:pk>/', views.edit_source, name='feeds_edit_source'),
path('sources/<int:pk>/delete/', views.delete_source, name='feeds_delete_source'),
path('export.opml', views.export_opml, name='feeds_export_opml'),
path('refresh/', views.refresh_now, name='feeds_refresh'),
path('briefing/', views.briefing, name='feeds_briefing'),
path('briefing/seen/', views.briefing_seen, name='feeds_briefing_seen'),
path('news/', views.news, name='feeds_news'),
path('stories/<int:pk>/', views.story, name='feeds_story'),
path('blogs/', views.blogs, name='feeds_blogs'),
path('starred/', views.starred, name='feeds_starred'),
path('items/read/', views.mark_read, name='feeds_mark_read'),
path('items/<int:pk>/', views.item, name='feeds_item'),
path('items/<int:pk>/star/', views.star, name='feeds_star'),
path('settings/', views.settings, name='feeds_settings'),
]