summaryrefslogtreecommitdiff
path: root/project_feedreader_feature_candidates.md
diff options
context:
space:
mode:
authorClaude <noreply@anthropic.com>2026-09-24 08:57:59 +0000
committerClaude <noreply@anthropic.com>2026-09-24 08:57:59 +0000
commit344ba52bf9977f5e087938a51196dfd7a75d2fe2 (patch)
tree74d3d43ace198b105515421c740857455d01f4b6 /project_feedreader_feature_candidates.md
parenta6d58e009efcc06e7b5221d75ebed36533786dce (diff)
tungsten: memories from the Listen build session
Adds the feedback and project memories written while building Listen, podkit and the devtools wrappers, and updates the FeeDreader entries. Uncommitted since August; committing before merging Fedora's tree so neither side is lost. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'project_feedreader_feature_candidates.md')
-rw-r--r--project_feedreader_feature_candidates.md57
1 files changed, 57 insertions, 0 deletions
diff --git a/project_feedreader_feature_candidates.md b/project_feedreader_feature_candidates.md
new file mode 100644
index 0000000..421e385
--- /dev/null
+++ b/project_feedreader_feature_candidates.md
@@ -0,0 +1,57 @@
+---
+name: project-feedreader-feature-candidates
+description: "Candidate FeeDreader features sourced from NetNewsWire's open feature requests + Brent Simmons' 'After Fixin' the Bugs' post (2026-08-26) — for future discussion, not yet committed to BACKLOG.md"
+metadata:
+ node_type: memory
+ type: project
+ originSessionId: dc4bccb0-7454-412c-9fcd-f9e336f62a74
+ modified: 2026-08-29T21:13:03.407Z
+---
+
+Peter asked me to research NetNewsWire's (https://github.com/Ranchero-Software/NetNewsWire)
+open feature-request issues plus Brent Simmons' blog post "After Fixin' the Bugs"
+(https://inessential.com/2026/08/26/after-fixin-the-bugs.html, NNW down to 10 open bugs,
+now facing 556 feature requests) for ideas relevant to [[project-feedreader]]. He ruled out
+sync, social features, and unread-count changes as not interesting. Confirmed two things
+against the actual FeeDreader code (as of 2026-08-27):
+
+- **Thumbnails/enclosures: already fully built**, matching Brent's own dependency chain
+ ("thumbnails depend on enclosure/Media RSS support"). `FeedParser.kt` parses
+ `media:thumbnail`, `media:content`, RSS `<enclosure type="image/*">`, Atom
+ `rel="enclosure"`, plus a first-`<img>` fallback → `ArticleEntity.imageUrl`, rendered as
+ both the list thumbnail and reader hero image. Worth testing against a Mastodon feed
+ specifically — Brent flags that as the case where the image lives only in the enclosure,
+ not the body.
+- **Pause/disable a feed: not built at all.** No `isPaused`/`isEnabled` field anywhere in
+ `Entities.kt`/`Daos.kt`. NNW itself has two separate open, undesigned requests for this:
+ #3401 "Disable feed" (hide but keep, 2022) and #4708 "Pause feed setting" (stop fetching
+ temporarily, Aug 2025) — neither has maintainer commentary yet. Cheapest shape for us: a
+ per-feed `isPaused` bool, skipped during refresh, row shown grayed out rather than hidden
+ (fits the existing "Last fetch failed" virtual-section pattern).
+
+**Candidate feature list (not yet in BACKLOG.md):**
+1. Regex filters — extend existing keyword mute/highlight to pattern matching. NNW's
+ oldest open feature request (#1864, since 2020).
+2. Pause a feed — see above.
+3. Limit posts/day from a noisy feed (NNW #4889) — inverse of the dead-feed-detection
+ backlog item: some feeds post too much instead of going quiet. Could reuse the same
+ per-feed cadence data.
+4. "Last updated" timestamp on the article list (NNW #4964) — feed-freshness signal,
+ complements the stale-feed badge already planned in BACKLOG.md.
+5. Timeline text-size setting (NNW #4925) — readability/accessibility.
+6. Copy link / share with the highlighted quote (NNW #4793) — extends the existing
+ share-sheet target.
+7. Per-feed JavaScript toggle (NNW #4788) — a scoped, explicit per-feed opt-in rather than
+ a global relaxation, so it doesn't undermine the app's JS-off-by-default security
+ posture ([[project_feedreader]] / CLAUDE.md quality gate item 5).
+8. Don't autoplay animations/video (NNW #4738) — general version of the tap-to-play
+ pattern already built for YouTube embeds (see BACKLOG.md "YouTube embeds (done)");
+ worth checking whether inline GIFs/`<video autoplay>` in regular articles still
+ autoplay through the WebView.
+
+**Why:** Peter wants a running list to reference next time he's thinking about new
+FeeDreader features, not an immediate build — this is explicitly deferred triage.
+
+**How to apply:** Bring these up whenever Peter is discussing new FeeDreader features or
+what to build next, rather than waiting for him to re-ask. Don't build any of these
+unprompted.