- SourceKind carries whether it feeds the Briefing, its fixed time window
(Learning, Fun) and whether reading is picture-led (Fun); windowOf and
the reader read from it.
- AppState.briefingArticles is the one place that says only News sources
feed the Briefing; generateBriefing and the Briefing tab use it.
- articlesOf, hiddenCountOf and briefingArticles share one filter.
- FeedService.fetchAll takes windowOf: like AppState.windowOf.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The class and its file (lib/models/source.dart) follow the glossary term.
Persisted JSON keys are unchanged.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings in the News catalog update (#5). ByteByteGo joins the expected
on-by-default sets for updated installs, and the catalog test checks the
on-by-default set among News sources.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Every Source now has a kind: News, Learning or Fun. Curated Sources default
to News, and custom Sources persist their kind (ones saved before default
to News). Each kind has its own time window: News follows the 12/24/48 h
setting, Learning reaches back 14 days, Fun 3 days.
A new Learn tab between Briefing and Sources lists Learning articles with
the same paid/sponsored filters and reader view as Today. It is built from
a list of kinds so a Fun section can follow. Today and the Briefing only
use News. ByteByteGo is the first Learning source, on by default.
The home shell names its tabs instead of using hard-coded indexes.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Adds Techmeme, Lobsters, The Decoder and Simon Willison, all on by default.
Hacker News now reads hnrss.org's front page with 150+ points. t3n,
ComputerBase, TechCrunch and The Verge stay in the catalog but are off by
default. heise Security and heise Developer are described as sections of
heise online. WIRED and Engadget are removed.
Saved toggles for Sources that are no longer in the catalog are dropped on
launch, so they don't count towards "n of m enabled". The README source
table matches the catalog.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The app now remembers which curated Sources it has seen. A Source that is on
by default is enabled the first time it appears, also on installs with saved
toggles; Sources seen before keep the user's choice. Installs from before this
change count the current catalog as seen.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Flutter app that collects daily tech news from German and English RSS/Atom
feeds, with a reader view, AI article summaries and daily briefings (Claude
API or n8n webhook), paywall/sponsored filtering and ad/consent blocking.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>