You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GlassStackHeader and HeroHeader components to expand the iOS 26-inspired UI kit, plus an AchievementsScreen scaffold for future engagement features.
Expanded Pittsburgh RSS coverage (WESA, Kidsburgh, Penguins, Pirates, Pitt Panthers, and more) with opt-in defaults for audio/experimental feeds and Settings badges for default-off sources.
Digest settings now let users store an optional Perplexity API key locally on-device for digest and article summaries.
Changed
Navigation, profile, digest, saved, and settings flows refreshed alongside storage/context updates; RSS service and saved-article handling tuned for more resilient data fetch and caching.
Daily Digest now pulls from live feed data instead of mock articles, surfaces launch controls directly in Digest & Launch settings, and falls back to extractive summaries when no AI key is saved.
Daily Digest now uses profile-scoped feed recency metadata from Home and Section fetches, so it avoids resurfacing stories the active profile already pulled into the feed moments earlier.
Onboarding now uses scroll-safe slides, a real Next action, accessible progress feedback, and current minimal/comprehensive tab-layout selection instead of a dead CTA.
Profile now surfaces tracked reading metrics, relative last-read/save activity, and karma tier status from current device data instead of placeholder streak copy.
Profile is now pared back to overview, reading, account, and support sections, removing duplicate Settings paths and preview-only clutter.
Fixed
Sign in with Apple flow and FullStory instrumentation hardened; Jest setup and shared components updated for more reliable tests and UI interactions.
Pinned Reanimated/Worklets versions to the Expo SDK 54 native bundle to stop JS/native mismatch crashes in Expo Go.
Feed ordering now follows each story's real publishedAt timestamp, and Home/Section screens keep cached stories visible with honest retry messaging when refreshes fail.
Reading progress now stays in memory between syncs, saves are batched per active profile, and ArticleScreen safely completes zero-scroll content without corrupting progress state.
The last active profile now restores on relaunch, and profile switches immediately update the selection used by saved-article and reading-progress storage.
Completing onboarding now also marks the current app version as seen, so post-update What's New flows do not reopen on the next launch.
Theme changes now propagate across the app shell and primary surfaces without reload, replacing the old frozen theme/colors path with reactive tokens in navigation, onboarding, profile, reader, and settings flows.
Production runtime dependencies in the feed/network stack were patched and pinned via direct upgrades and overrides, clearing current npm audit --omit=dev findings for fast-xml-parser and related transitive packages.
Removed the build-time Perplexity env dependency from app code, and digest refreshes no longer advance the last-visit timestamp when a digest fetch fails.
Profile stats now retain recent fetched article ids/timestamps, and feed refreshes record them without regressing active-profile persistence.
Documentation
Rewrote the public GitHub README to better explain the app, local setup, IPA/TestFlight installation, versioned releases, and changelog workflow.
New and updated guides: EAS hosting, backend learning notes, navigation iOS26 patterns, onboarding/What’s New templates, RSS feed templates, and refreshed standards/deployment docs.
Added a GitHub Actions iOS release workflow and updated the release docs around the EAS-first IPA/TestFlight path.