v0.83 — 2026-05-15
Per-Article Paywall Detection
`isAccessibleForFree` check — after fetching each RSS feed, every article URL is inspected for the schema.org isAccessibleForFree: false JSON-LD field that news sites (BBC, NYT, etc.) use to declare paywalled content. Paywalled individual articles are dropped while free articles from the same source continue to show
Runs at cache time — checks run in parallel once per 10-minute cache window, not on every page load. Network timeout of 4 seconds per article prevents slowdowns
Covers all curated feeds — World, National, EU/UK, Africa, SwaNa, Asia, Green, Sports, and LGBTQ+ feeds all benefit. BBC articles behind the new US subscription paywall will no longer appear
v0.82 — 2026-05-15
Local News — Publisher Domain Resolution & Description Cleaning
Publisher name → domain lookup table — when the RSS <source url> attribute is absent, the extracted publisher name is matched against a lookup table (Detroit Free Press → freep.com, WWMT → wwmt.com, WLNS → wlns.com, The Holland Sentinel → hollandsentinel.com, etc.). Enables reliable paywall filtering and funding badges even without the XML attribute
Paywall filtering now catches more outlets — Holland Sentinel, Battle Creek Enquirer, Lansing State Journal, Times Herald, and other Michigan Gannett papers added to blocklist. Detroit Free Press now correctly filtered
Clean descriptions — Google News appends " Publisher Name" to every article snippet; this suffix is now stripped before display
Funding badges for local TV — Gray Television (WWMT, WLNS), Graham Media/WDIV (ClickOnDetroit), TEGNA (WZZM13), Scripps/WXYZ, Nexstar/WOOD TV, and Advance Publications/MLive added to funding database. Badges now appear on local TV and digital news cards
Changelog markdown rendering fixed — **bold** and ` code ` spans now render inline in all bullet points, not just those matching a specific pattern
v0.81 — 2026-05-13
Local News — Real Publisher Attribution & Paywall Filtering
Real publisher identified — Google News RSS <source> element parsed to get the real publishing outlet's domain; article title suffix ( - Publisher Name) reliably extracts the publisher name on every item. Cards now show "WWMT", "Outdoor News", "Civic Media", etc. instead of "NEWS.GOOGLE.COM"
Titles cleaned — - Publisher Name suffix that Google appends to every article title is stripped before display
Paywall filtering — articles from ~70 known paywalled domains are excluded from local feeds. The app promises "no paywalls"; this enforces it. Blocked chains include Alden Global Capital / MediaNews Group, Tribune Publishing, Gannett, McClatchy, Hearst, and major premium nationals (NYT, WSJ, FT, etc.)
Funding transparency for local publishers — funding records added for 14 major newspaper ownership chains: Alden Global Capital, Gannett, McClatchy (Chatham Asset Management), Hearst, Sinclair/Baltimore Sun, Patrick Soon-Shiong/LA Times, Blethen family/Seattle Times, News Corp/WSJ, NYT Sulzberger family, and others. Funding badges now appear on local news cards where ownership is documented
v0.80 — 2026-05-13
Feedback System — Telegram Only
Telegram delivery — feedback form now sends messages directly to the developer via Telegram Bot API. No email client ever opens; everything happens on-page
Signal & Telegram contact options — users can leave a Telegram username or Signal handle for replies (email option removed entirely)
Header Feedback CTA — prominent 💬 Feedback link added to the masthead, same weight as primary nav links
Developer Signal handle — @fridayB.23 listed on the feedback page for direct contact
Slogan update — "FREE EDITION" replaced with "FREE AS IN SPEECH / AS WELL AS IN BEER"
v0.79 — 2026-05-13
Mobile-First Layout
No more off-screen overflow — added overflow-x: hidden + box-sizing: border-box reset globally; nothing bleeds past the screen edge on any device
NewsCard header redesigned — source name + timestamp on row 1; category/language/BREAKING badges wrap freely on row 2. Eliminates the single-row cram that caused right-edge clipping on iPhone
Source list — feed description capped to 2 lines (line-clamp-2) so long source lists don't overflow
Tighter mobile padding — px-3 / py-3 on small screens (restores px-4 at sm: breakpoint), recovering visible content width on narrow phones
v0.78 — 2026-05-13
Source Integrity — NED Policy
NED funding policy — sources receiving National Endowment for Democracy funding are treated identically to PAC or state-adjacent funders and removed from the feed. NED is funded by the U.S. Congress to advance American foreign policy interests
Removed: Daily NK, The Irrawaddy, Prachatai, Nómada (Guatemala), Kyiv Independent, Balkan Insight/BIRN — all confirmed NED grantees
Replaced with NED-independent alternatives: Ukrainska Pravda, Frontier Myanmar, Bangkok Post, Plaza Pública (Guatemala)
38 North added (Stimson Center) — satellite-verified North Korea analysis, no NED funding
Korea JoongAng Daily + Korea Herald added — genuine English-language South Korean dailies replacing Hankyoreh (whose RSS served Korean despite claiming English)
Funding DB updated — all removed sources now have flag-level entries so they are flagged if they appear as linked articles in other feeds. Kyiv Independent upgraded from watch → flag
InSight Crime flagged watch — documented USAID recipient
Share URL — share message now hardcodes https://news.yra.one as the canonical URL
v0.77 — 2026-05-12
Bug Fixes — Critical
Translation to English fixed — translateText() had || targetLang === 'en' that skipped ALL English-direction translations. LatAm, Asia, and EU article previews now properly translate to English
LGBTQ feed bleed fixed — LGBTQ-specific outlets had secondary categories (national, international) causing them to appear in World and National feeds. All 7 outlets now have category: ['lgbtq'] only
SwaNa dark mode black screen fixed — missing dark mode text overrides for text-amber-800/900, text-blue-700/800/900 made content invisible. Added all missing overrides
New Features
Feedback form — /feedback page with Bug/Feature/General types
Brave Browser tips — translation tip with working link added to LatAm, Asia, and EU regional pages
LatAm page updated — "Uruguay focus" blurb replaced with accurate global Latin America coverage description
v0.76 — 2026-05-11
New Features
Dark mode — html.dark CSS class toggled by ThemeProvider; full dark palette using CSS overrides in globals.css. Toggle in Settings
Navigation progress bar — amber bar animates across the top of the screen on every page transition
Expanded funding database — 21 new entries including The Guardian (Scott Trust), Democracy Now!, ProPublica, CBC, Arab News, Iran International, Kyiv Independent, The Grayzone, and more
PWA benefits section — Install page now explains *why* this isn't in the App Store (no 200MB download, no account, on-device privacy, cross-platform, offline reads)
Loading indicator — animated bouncing dots with "Fetching and assembling on your device…" text while articles load
Bug Fixes
About dropdown — previously the entire About button was a <button> that blocked navigation. Split into a <Link> for navigation and a separate chevron <button> for the dropdown
Build warning — added "type": "module" to package.json to silence MODULE_TYPELESS_PACKAGE_JSON warning
v0.75 — 2026-05-11
New Features
North America tab — dedicated Canada (CBC, Tyee, Narwhal, Canadaland, Globe and Mail) and Mexico (Animal Político, Aristegui, Proceso, Pie de Página) sources in the Regions sub-row
LGBTQ+ section — LGBTQ Nation, The Advocate, PinkNews, Washington Blade, them., Bay Area Reporter, OutRight Action International. On by default; toggle in Settings
Share with a friend — pre-written share message on the Install page with one-tap copy and Web Share API support
About page anchor navigation — the "About" nav link opens a dropdown with links directly to each section of the About page
Changelog — linked from the footer on every page
Bug Fixes
Duplicate article keys — fixed React warning when multiple sources returned articles with the same ID hash
Category labels in cards — NewsCard now displays correct labels for all categories (LGBTQ+, N. AMERICA, GREEN, EU/UK, etc.)
Content & Copy
Donation copy updated — honestly acknowledges the developer is working-class
Removed outdated "Latin American focus" framing — the app went worldwide in v0.7
About page restructured with clear section anchors
Styling
Cards use rounded-2xl for softer, more modern look
Improved hover transitions on cards and buttons
Better category pill colors distinguishing content type
v0.7 — 2026-05-10
New Features
12-language translation — article previews translated via free Google Translate (no API key required). Language selector in Settings
Regional pages — EU/UK, Africa, SwaNa, Asia, Green, Sports
SwaNa section — Southwest Asia & North Africa, with modal explaining why we use this instead of "Middle East"
Sports section — on/off toggle + 19-sport interest grid (including regional: AFL, Kabaddi, Sumo, Hurling, Handball)
Two-row navigation — primary tabs + regions sub-row
About page — privacy-first section, AI/MANNA essay (Marshall Brain's *MANNA* and the Australia Project)
Install page — Proton VPN recommendation, Brave browser recommendation
Sources (80+ added)
US: Marshall Project, The Lever, Drop Site, KFF Health News, Chalkbeat, Civil Eats, and more
EU: EUobserver, Euractiv, Mediapart, Correctiv, El Diario, Taz, and more
Africa: Daily Maverick, Mail & Guardian, East African, Africa Is A Country, and more
SwaNa: Middle East Eye, +972 Magazine, Electronic Intifada, Mondoweiss, and more
Asia: Rappler, Malaysiakini, Caixin Global, and more
Green: Grist, Inside Climate News, Carbon Brief, Mongabay, DeSmog, and more
v0.6 — 2026-05-09
New Features
Funding transparency badges — three levels (info / watch / flag) with sourced modal detail cards
PAC, SuperPAC, and NED explainers in funding badge modals
Stripe donations — one-time and monthly giving via Stripe Checkout
Install page — PWA install instructions auto-detected by platform (iOS / Android / desktop)
v0.5 — 2026-05-08
Initial Public Build
RSS aggregation from NPR, Al Jazeera, The Guardian, BBC, Democracy Now!, ProPublica, The Intercept
Local news by ZIP code via Zippopotam.us + Google News RSS
Latin America section: MercoPress, El País Uruguay, La Diaria, EFE, NACLA, and more
Keyword watch list with browser push notifications
Encyclopedia Brown visual theme: amber, deep brown, aged paper, serif typography
PWA manifest + service worker (offline support, installable)
All preferences stored in localStorage — zero server-side user data
v0.1 – v0.4 — 2026-05 (pre-build)
Concept & Design Phase
v0.1 — Brainstorming session: core concept of a free, no-paywall, no-algorithm news reader built around funding transparency. Identified key principles: on-device processing, no accounts, no tracking, open sourcing
v0.2 — Customized master prompts and AI tool settings for the development workflow. Established the Encyclopedia Brown name, visual identity (magnifying glass, amber/brown palette, aged paper, serif type), and the "Free Press Investigations" tagline
v0.3 — Refined feature set and architecture. Settled on Next.js App Router, Tailwind CSS, RSS aggregation, localStorage-only preferences, and the unofficial Google Translate API
v0.4 — Final prompt and feature refinement before first build. Locked in source list philosophy (independent outlets, funding transparency, no state-propaganda sources), PWA-first approach, and the MANNA/AI essay for the About page