Product Releases

Update Log

Every meaningful LinkerTube product update in one place, from major launches to smaller fixes.

v2026.04.03MajorALLFeatured

Language, Navigation, and Content System Update

Refined language handling across web and backend, upgraded onboarding and content metadata flows, polished subtitle sidebar behavior, and added changelog sync tooling.

April 3, 2026

What's New

  • Reworked app language and dashboard routing so web navigation, onboarding, profile, settings, and dictionary flows follow a more consistent language model.
  • Upgraded backend data structures for onboarding preferences, translation language naming, content taxonomy, derived content flags, and user word source tracking.
  • Improved homepage, content, and recommendation-related APIs so language-aware metadata and content state are more reliable.
  • Polished subtitle overlay, subtitle list, sidebar, and tab interactions on web after the larger UI update.
  • Added an internal script to generate and sync changelog entries from git history.
  • Expanded backend test coverage around content resilience and video resume progress.

Main Areas Updated

  • Web dashboard and player routing
  • Language preference and onboarding flow
  • Content taxonomy and metadata pipeline
  • Subtitle sidebar and reading interactions
  • Internal changelog publishing workflow

Key Commits

  • 512b706 backend language and content system update
  • 1898674 web UI and language routing update
  • c00b675 subtitle sidebar follow-up fix
  • fed713f changelog sync script
v1f4e20bFeatureWEBFeatured

Right Subtitle Sidebar Toggle

The web player now lets users show or hide the right subtitle sidebar and remember that preference.

April 2, 2026

Highlights

  • The web player now has a right subtitle sidebar toggle
  • Hiding the sidebar gives the video area more space
  • The sidebar state is saved for future visits
vfa86f2bImprovementALLFeatured

Daily Goal And Streak Logic Update

The default daily goal is now 10 minutes, with streak and reward logic aligned to actual goal completion.

April 2, 2026

Highlights

  • The default daily goal changed from 15 minutes to 10 minutes
  • Monthly completion now depends on whether the daily goal is completed
  • Completing the goal now correctly updates streaks and rewards
v41fdf62ImprovementWEBFeatured

Player Subtitle And Word Interaction Refactor

The web player refactors subtitle controls, word hover previews, translation toggles, and playback controls.

April 2, 2026

Highlights

  • The player controls and subtitle settings menu were rebuilt
  • Word hover previews are more stable and close less aggressively
  • Learning and saved words now have clearer highlight states
vc015ad3FixIOSFeatured

Mobile Home And Review Refresh Fixes

Mobile home and review screens now refresh more reliably and show more accurate remaining review counts.

April 1, 2026

Highlights

  • The home screen now refreshes when it regains focus
  • Review completion now invalidates and refreshes related home queries
  • Remaining review counts are now more accurate
ve965efdFixWEBFeatured

Membership Self-Heal Improvements

If a Stripe subscription is still valid but the local entitlement is missing, the system can now restore access automatically.

March 30, 2026

Highlights

  • Missing local entitlements can now be rebuilt automatically
  • Both active and grace-period subscriptions are supported
  • Expired subscriptions are not restored incorrectly
v961b613FixWEBFeatured

Membership Cancel Semantics And Backfill

Fixes the API semantics around Stripe cancellation fields and adds a migration to backfill historical data.

March 29, 2026

Highlights

  • An application-level scheduled_cancel field was added
  • Stripe cancellation timestamps are now stored correctly
  • A migration was added to repair historical rows
v780c9a8FeatureWEBFeatured

Stripe Customer Portal Support

Adds Stripe Customer Portal session support so users can manage subscriptions and billing directly in Stripe.

March 27, 2026

Highlights

  • A Stripe Customer Portal session endpoint was added
  • Billing health checks now report portal readiness
  • Stripe API version and return URL configuration were added
v77a7dd2FeatureALLFeatured

Unified Billing And Membership Foundation

The backend now includes a unified foundation for billing, memberships, and redeem codes.

March 25, 2026

Highlights

  • Unified billing routers, schemas, and services were introduced
  • Core models for subscriptions, orders, and entitlements were added
  • Redeem code and billing event foundations are now in place
v16af823FeatureIOSFeatured

Offline Language Preference Support

The app now preserves language preferences offline so users can keep learning without a network connection.

March 17, 2026

Highlights

  • Language preferences now work offline
  • Preferences are cached per user
  • Sync to the server can happen after connectivity returns
v5da0a4eFixIOSFeatured

Player Restore And Subtitle Auto-Scroll Fixes

Fixes player disappearance after backgrounding or navigation and improves subtitle auto-scroll control on mobile.

March 16, 2026

Highlights

  • The mobile player no longer disappears after returning from background or navigation
  • Playback position and state are restored more reliably
  • Subtitle auto-scroll is more stable and now includes a Back to current action
v60ec4eaFeatureIOSFeatured

iOS Sign-In Expansion

The mobile app now expands sign-in support with Apple, Google, and email flows on iOS.

March 15, 2026

Highlights

  • Apple Sign In was added to the iOS login page
  • Google sign-in remained and was refined
  • Email sign-in and sign-up modes were added
v6739b29FixWEB

Fix login and authentication flow

Fix login and authentication flow, including the main UI, logic, or state changes touched by this commit.

April 3, 2026

What's New

  • This entry is based on the commit subject: fix
  • Adjusted login, auth callback, and session synchronization flows
  • Adjusted pricing page and subscription entry UI

Commit

  • 6739b29
v0b872b4FixALL

Fix daily goal and streak system

Fix daily goal and streak system, including the main UI, logic, or state changes touched by this commit.

April 3, 2026

What's New

  • This entry is based on the commit subject: fix strike days
  • Adjusted goal completion, streak tracking, and reward logic
  • This update includes test coverage improvements to reduce regression risk

Commit

  • 0b872b4
v5366aadFixWEB

Fix login and authentication flow

Fix login and authentication flow, including the main UI, logic, or state changes touched by this commit.

April 3, 2026

What's New

  • This entry is based on the commit subject: fix
  • Adjusted login, auth callback, and session synchronization flows
  • Updated subscription management entry points on the profile page
  • Improved the main video page interactions, controls, and sidebar logic on web
  • Adjusted subtitle display, list reading, and hover interaction details
  • Improved word tapping, preview behavior, and vocabulary interactions

Commit

  • 5366aad
v8e1676dFeatureWEB

Add player and subtitle interactions

Add player and subtitle interactions, including the main UI, logic, or state changes touched by this commit.

April 3, 2026

What's New

  • This entry is based on the commit subject: Add update log pages and refine player subtitle flow
  • Improved the main video page interactions, controls, and sidebar logic on web
  • Adjusted subtitle display, list reading, and hover interaction details
  • Synced sitemap or page metadata updates

Commit

  • 8e1676d
v58ea8cfImprovementWEB

Home Goal Card Simplified

The home page removes an extra loading card and full-card navigation to reduce flicker and accidental taps.

April 2, 2026

Highlights

  • The home goal module now reuses the weekly goal card directly
  • The extra skeleton card was removed to reduce first-load flicker
  • Full-card click navigation was removed to prevent accidental taps
v5aedbf4ImprovementWEB

Home Weekly Goal Layout Refresh

The home page and weekly goal card were reworked for clearer stats and learning entry points.

April 2, 2026

Highlights

  • The weekly goal card layout was redesigned
  • Stats and progress sections were reorganized for clarity
  • The home page spacing was refined across screen sizes
vfa86f2bImprovementALL

Update daily goal and streak system

Update daily goal and streak system, including the main UI, logic, or state changes touched by this commit.

April 2, 2026

What's New

  • This entry is based on the commit subject: change dashboard ui
  • Adjusted goal completion, streak tracking, and reward logic

Commit

  • fa86f2b
v58f4c01FixWEB

Player Subtitle Overlay And Translation Reset Fix

Fixes subtitle overlays, loading skeleton behavior, and translation reset behavior on the player page.

April 2, 2026

Highlights

  • Subtitle rendering is more stable during mode switches
  • The overlay bar and below-player subtitle bar work together more cleanly
  • Translation state resets correctly when languages change
vc015ad3FixIOS

Fix mobile learning experience

Fix mobile learning experience, including the main UI, logic, or state changes touched by this commit.

April 1, 2026

What's New

  • This entry is based on the commit subject: fix

Commit

  • c015ad3
v0a1ebd4ImprovementWEB

Navigation And Resource Page Refresh

The web home page, resources pages, sidebar, and top navigation were visually refreshed.

April 1, 2026

Highlights

  • The home page and resources pages received layout improvements
  • Sidebar and top navigation were refined
  • Overall hierarchy and readability were improved
v7a6bae6FixWEB

Subtitle Fallback And Settings Fix

Improves subtitle fallback logic and fixes subtitle setting sync issues across player areas.

April 1, 2026

Highlights

  • Subtitle fallback behavior was fixed
  • Subtitle settings now stay in sync across the player and sidebar
  • Some recommendation and navigation edge cases were cleaned up
v7ef9bfeFixWEB

Landing Nav And Translation Cache Fix

Fixes landing page navigation and footer links while improving translation cache resets when languages change.

March 31, 2026

Highlights

  • Landing navigation and footer links were cleaned up
  • Translation cache now resets when the source or target language changes
  • Sitemap timestamps were updated
ve965efdFixALL

Fix billing and subscription flow

Fix billing and subscription flow, including the main UI, logic, or state changes touched by this commit.

March 30, 2026

What's New

  • This entry is based on the commit subject: fix
  • Updated billing and Stripe membership handling
  • Expanded automated coverage for billing flows
  • This update includes test coverage improvements to reduce regression risk

Commit

  • e965efd
vd8927a1FixWEB

Pricing Display Fix

Fixes incorrect price display issues on the pricing page and updates related static metadata.

March 30, 2026

Highlights

  • Pricing display issues were fixed
  • Price information was cleaned up
  • Static sitemap timestamps were updated
vbd4356fImprovementWEB

Profile Membership Copy Refresh

The profile page now shows membership status, next billing dates, and access end dates more clearly.

March 29, 2026

Highlights

  • Membership copy on the profile page was rewritten for clarity
  • Next billing and access-until dates are now shown more explicitly
  • Billing management guidance is clearer
v2ab0926ImprovementWEB

Web Subscription Portal Guidance Update

Documentation and API guidance now make it explicit that web subscription management should go through Stripe Customer Portal.

March 29, 2026

Highlights

  • Web subscription management is now clearly defined around Stripe Customer Portal
  • Dedicated web resume CTAs are no longer recommended
  • Membership field guidance was updated
v7ed6fefImprovementWEB

Stripe Cancellation Docs And Tests Expanded

Improves Stripe cancellation documentation and adds stronger test coverage for key cancellation scenarios.

March 29, 2026

Highlights

  • Payment docs now explain cancellation fields more clearly
  • “Scheduled cancellation” is documented as an application-level concept
  • Test coverage for cancellation scenarios was expanded
v1125991FeatureWEB

Resume Subscription Support

Subscription state now includes resume-related fields and backend support for resume flows.

March 28, 2026

Highlights

  • Backend support was added for resume subscription flows
  • Membership state now exposes cancellation-related fields
  • Frontend can now represent canceled-but-still-active states more accurately
v0e049caImprovementWEB

Resume Subscription Entry Removed

The web app removes the resume-subscription entry and related UI.

March 28, 2026

Highlights

  • Resume subscription UI was removed from the profile page
  • Resume-related pricing UI was removed
  • The subscription management flow was simplified
vfc05343FeatureWEB

Resume Subscription Entry Added

The web app adds a resume-subscription entry and supporting UI.

March 28, 2026

Highlights

  • Resume subscription entry points were added to the profile page
  • Pricing UI gained resume-subscription messaging
  • Frontend support was added for the related billing API
v3679432FeatureWEB

Subscription Cancel-At Support

Membership APIs and database support now include cancel-at timing so access-end dates can be shown more accurately.

March 28, 2026

Highlights

  • Subscription cancel-at fields were added
  • A supporting database migration was introduced
  • Tests now cover access-end timing scenarios
v171ab49FixWEB

Lifetime Purchase Cancels Existing Subscription

When a user purchases a lifetime plan, the system now schedules an existing Stripe subscription to end at period end.

March 28, 2026

Highlights

  • Lifetime purchases now check for an active Stripe subscription
  • Existing subscriptions can be scheduled to end at period end
  • This reduces the risk of continued recurring charges after a lifetime purchase
v555c4d5FixWEB

Duplicate Subscription Prevention

The system now blocks new Stripe subscriptions when a user already has an active one.

March 27, 2026

Highlights

  • Protection was added against duplicate subscriptions
  • New Stripe subscriptions are blocked for already-active members
  • Duplicate charges and duplicate entitlements are prevented
v07af2b5FixWEB

Pricing Duplicate Subscription Messaging Fix

Fixes duplicate-subscription messaging and behavior on the pricing and landing pages.

March 27, 2026

Highlights

  • Duplicate subscription states are now shown correctly on the pricing page
  • Landing page purchase behavior was adjusted for already-subscribed users
  • Incorrect purchase prompts are less likely to appear
v254529aFixIOS

Fix player experience

Fix player experience, including the main UI, logic, or state changes touched by this commit.

March 25, 2026

What's New

  • This entry is based on the commit subject: fix srs
  • Improved global player behavior and resume logic on mobile
  • Added mobile login or platform capability configuration

Commit

  • 254529a
v254529aImprovementIOS

Mobile Home Learning Panel Refresh

The mobile home screen refreshes learning entry points, player controls, and the iOS icon sync flow.

March 25, 2026

Highlights

  • The home learning panel and video feed were reorganized
  • Global player controls were refined
  • iOS icon sync tooling and build config were added
v68c9b0cFeatureIOS

Add player experience

Add player experience, including the main UI, logic, or state changes touched by this commit.

March 20, 2026

What's New

  • This entry is based on the commit subject: add full screen
  • Improved global player behavior and resume logic on mobile
  • Adjusted the word lookup sheet size and scroll area

Commit

  • 68c9b0c
v68c9b0cFeatureIOS

Mobile Fullscreen Player

The iOS player now supports fullscreen playback with improved subtitle and word-lookup behavior.

March 20, 2026

Highlights

  • Fullscreen playback support was added
  • Player controls were adjusted for fullscreen
  • Subtitle reading and word lookup improved in fullscreen mode
v2bd3c42FeatureIOS

New Mobile Player Controls

The mobile player adds new controls to make common learning actions easier to reach.

March 20, 2026

Highlights

  • New buttons were added to the player
  • Common playback actions are easier to reach
  • One-handed use on mobile is more efficient
v82aff9eImprovementIOS

Root Layout Cleanup

The mobile root layout was cleaned up to remove redundant configuration and reduce conflicts.

March 19, 2026

Highlights

  • Redundant root layout configuration was removed
  • The root structure is now simpler
  • This reduces interference with future player and global-state changes
v616126aFixIOS

Global Player State Sync Improvements

Global player state sync and recovery on mobile were improved to reduce playback issues across screen transitions.

March 19, 2026

Highlights

  • Global player state syncing was improved
  • Playback state is less likely to be lost between screens
  • Recovery and teardown behavior are more stable
vcc1a8a7ImprovementIOS

Mobile Subtitle Display Improvements

Mobile subtitle presentation, word tapping, and reading rhythm were improved.

March 18, 2026

Highlights

  • Subtitle rows were redesigned for better readability
  • Current and non-current lines are easier to distinguish
  • Word tap feedback and readability improved
vbac6530FixIOS

iPad Subtitle Display Fix

Fixes subtitle display issues on iPad and improves reading stability on larger screens.

March 18, 2026

Highlights

  • Subtitle display issues on iPad were fixed
  • Subtitle layout was improved for larger screens
  • Coordination between the player and subtitle area is cleaner