v1.4.5 — the interface pass
The interface pass. A full review of FriRSS's UI turned into this cycle: six themes instead of one, a command palette, and a long list of things that were quietly broken for anyone using a keyboard, a finger, or an eye that separates greys poorly.
🎨 Themes
- Six themes ship with it — Default, Riso (white paper, one fluorescent ink), Paper (sepia) and High Contrast in light; Night and Desk in dark.
- Follow your system — pick a light theme and a dark one, and FriRSS switches with the device, keeping your font sizes.
- Shipped themes now update — a preset used to freeze at the version you first received, so a fix to one never reached you.
⌨️ Reach
- A command palette on ⌘K / Ctrl+K — jump to a feed, category, label or view, switch FreshRSS server, run an action. Accents are ignored, so securite finds Sécurité.
- A shortcut sheet on
?, showing the keys you actually configured. - Keyboard focus is visible — it was not, anywhere: 137 buttons, four focus rings, all four on the login screen.
- Touch targets reach 44pt, icon-only buttons have names for screen readers, and reduced motion is honored everywhere.
✨ New
- Manage your categories — rename, delete, and move feeds between them, from Preferences → Feeds.
- Mark as read while scrolling, optionally. Off by default, never during a search.
- Share an article or copy its link — the system share sheet on mobile, the clipboard elsewhere.
- Confirmation messages — the app never used to say an action had worked.
- Recent searches, five per server.
🐛 Fixes
- iOS no longer zooms when you tap a text field — the rule meant to prevent it was losing to a CSS class.
- Text on filled buttons is readable — white was hardcoded on colors you choose, which on the default mint was 1.9:1.
- Unread articles are visible in the list — a bar on the left, where the state rested on font weight alone.
- The unread count is readable in the sidebar in every theme, not just the default one.
- Date separators carry a date, not just a weekday.
- Feed icons in the article list, so you recognise a source instead of reading it.
🧹 Under the hood
- React 19, with no source change — the APIs it removes were used nowhere.
- Article transitions, a title that morphs from the list into the reader, and a settling list — all off under reduced motion.
- Mobile menus open as a sheet from the bottom, within thumb reach.
Full detail in CHANGELOG.md · Image: ghcr.io/fripix/frirss:1.4.5