TBC App - Youtube Widget

SKU: TBC-APP-YOU-MOD

Surface your YouTube channel inside the community app. Members see your latest uploads on the home screen and tap through to a native browser for all your playlists and videos. Server-side caching keeps everything fast without burning YouTube API quota. Set up in minutes โ€” point it at your channel and go.

$29.00
Buy Now

v1.1.8
Changelog ยท v1.1.8

1.1.8 โ€” 2026-07-09

๐Ÿ”ง Changed

  • Unified admin UI on the shared TBC design system. The YouTube settings screen now renders on the suite-wide shared admin libs (lib/tbc-admin-tokens, lib/tbc-admin-base, lib/tbc-save-bar) instead of its own private styling โ€” so it looks and behaves identically to every other TBC companion plugin. The page cards, tab strip, and the sticky "unsaved changes / Saved" save bar are now one shared, consistent mechanism; ~125 lines of duplicated per-plugin CSS and the hand-rolled save-bar JavaScript were removed in the process. Admin-only polish โ€” no change to the REST endpoints, caching, or the mobile app.
  • "Delete data on uninstall" moved to the License tab. The uninstall-behavior toggle now lives on the shared License panel (under Data Management) alongside every other TBC plugin, instead of buried at the bottom of the Settings tab. Your stored preference is untouched and still owned entirely by this plugin (the flag stays inside the tbc_youtube_settings option), and saving the Settings tab can no longer overwrite it. Ships the enhanced shared licenser (lib/class-tbc-licenser.php).

1.1.7 โ€” 2026-07-03

๐Ÿ”ง Changed

  • Shared license UI + licenser sync. Adopts the suite-wide license-activation UI (lib/tbc-license-ui.php) and brings the updater licenser to parity with the rest of the plugin suite (lib/class-tbc-licenser.php), with matching admin-settings polish.

๐Ÿ“ก Internal

  • Packaged docs refresh; no change to the REST API surface or caching behavior.

1.1.6 โ€” 2026-06-10

๐Ÿ›  Fixed

  • Security (quota protection): anonymous callers can no longer burn the site's YouTube API quota โ€” unauthenticated requests are guarded, every client gets a per-IP cap, and failed/empty lookups are negatively cached so repeated misses don't re-hit the Data API.
  • Fix (licensing): the shared licenser now fails open on a license-server outage โ€” only a definitive invalid/expired answer disables features. Ships the updated lib/class-tbc-licenser.php.

๐Ÿ”ง Changed

  • Change: REST errors normalized to the shared {code, message} envelope with real HTTP statuses.

๐Ÿ“ก OTA & Internal

  • Sync: Mobile module version bumped 1.1.5 โ†’ 1.1.6 (modules/youtube/module.ts). The module side fixes a search deadlock when the search box is cleared via the keyboard during a fetch-all.

1.1.5 โ€” 2026-06-02

๐Ÿ›  Fixed

  • Fix (licensing): Plugin now sends its FluentCart product id (item_id) on every license check so the License Server can reject a key bought for a different TBC product (previously any valid TBC key activated any TBC plugin). Ships the updated shared lib/class-tbc-licenser.php. Requires TBC License Server 1.1.3+.

๐Ÿ“ก OTA & Internal

  • Sync: Mobile module version bumped 1.1.4 โ†’ 1.1.5 (modules/youtube/module.ts) to mirror the plugin version.

1.1.4 โ€” 2026-05-29

๐Ÿ“ก OTA & Internal

  • Sync: Version bumped 1.1.3 โ†’ 1.1.4 to stay matched with the youtube module (modules/youtube/module.ts), which was rebuilt on the app's responsive layout primitives in core 1.1.7. No plugin code change.

1.1.3 โ€” 2026-05-27

๐Ÿ›  Fixed

  • Fix: Licenser registration now passes settings_url => admin.php?page=tbc-youtube&tab=license (tbc-youtube.php) so the "License" row link on the WP Plugins screen lands on the License tab instead of falling back to the main settings page.

๐Ÿ“ก OTA & Internal

  • Internal: TBC_YT_VERSION constant now auto-derives from the PHP header via get_file_data(). Removes the historical drift risk where the inline 'version' => '1.1.2' literal in TBC_Licenser::register() could lag the plugin header. Version bumps now only need to touch the Version: header line.

1.1.2 โ€” 2026-05-27

โœจ New

  • Add: Plugin now shows Settings | License row links on the WP Plugins screen alongside the default Deactivate. The row links are wired by the shared TBC_Licenser::add_plugin_row_links() filter โ€” no per-plugin code added here, the bump only ships the updated lib/class-tbc-licenser.php copy.

๐Ÿ“ก OTA & Internal

  • Sync: Mobile module version bumped 1.1.1 โ†’ 1.1.2 (modules/youtube/module.ts) to mirror the plugin version.

1.1.1 โ€” 2026-05-26

โœจ New

  • Add: Auto-register a YouTube launcher tile via the new tbc_ca_register_plugin_menu_items filter (requires the latest TBC Community App companion plugin). On plugin activation, a YouTube row with the logo-youtube Ionicon, route /youtube, location launcher, and a purple PLUGIN badge appears automatically in WP Admin โ†’ TBC Community App โ†’ Menus and in the app launcher itself. Buyer can drag, toggle, override label/icon/colors/visibility from the Menus tab; the route is locked since tbc-youtube owns /youtube. Deactivating the plugin removes the tile but preserves any buyer overrides in storage โ€” reactivating brings the tile back with all customizations intact. Replaces the previous workflow where buyers manually created a custom menu row pointing at /youtube after installing the plugin.

1.1.0 โ€” 2026-05-26

โœจ New

  • Add "Home Widget Video" admin setting โ€” choose Show latest video or Show random video for the app's home widget
  • Expose display_mode in GET /tbc-yt/v1/config so the mobile app can read the selection
  • Bump cached /latest pool from 15 to 50 videos (still a single API quota unit) so random mode in the app has more variety; limit query param now accepts up to 50

1.0.0 โ€” 2026-04-14

โœจ New

  • Initial release
  • YouTube Data API v3 integration with 6-hour server-side caching
  • REST endpoints under tbc-yt/v1 namespace (latest, playlists, playlist videos, config)
  • Admin settings page nested under TBC Community App menu (API key, channel ID, channel URL, cache clear)
  • Channel ID and Channel URL required โ€” no hardcoded defaults; endpoints return clear errors when unconfigured
  • "Delete all plugin data when uninstalled" opt-in setting; uninstall.php removes settings, version option, and YouTube cache transients when enabled

Bring your YouTube channel into the app

The YouTube add-on plugs your channel directly into the TBC Community App. Members see your latest videos on the home screen and can browse your full playlist library in a clean, native interface โ€” without ever leaving the app.

What’s included

  • Home screen widget โ€” your most recent uploads, refreshed automatically.
  • YouTube screen โ€” full browser with channel header, Subscribe button, and every playlist you publish.
  • Playlist detail view โ€” tap any playlist to see its videos in the order you’ve arranged them.
  • Native video cards โ€” thumbnails, titles, and view counts; tap to play.
  • Companion WordPress plugin (tbc-youtube) โ€” handles server-side caching of all YouTube API calls.

Why server-side caching matters

Your app never calls the YouTube Data API directly. The companion plugin sits between your app and YouTube, caching responses on your WordPress site. That means:

  • Faster load times โ€” members see videos instantly from cache.
  • Lower YouTube API quota usage โ€” one cache refresh serves all your members.
  • No API keys exposed in the app bundle โ€” the key stays on your server.
  • Rotate keys without rebuilding โ€” change the key in WordPress, app picks it up immediately.

Setup (under 10 minutes)

  1. Install the included tbc-youtube WordPress plugin.
  2. Get a free YouTube Data API v3 key from Google Cloud Console.
  3. Enter your API key and channel ID in the plugin settings.
  4. Enable the module in the setup dashboard.

Requirements

  • An active TBC Community App.
  • A WordPress site (for the companion plugin).
  • A free YouTube Data API v3 key.
  • Your YouTube channel ID.

Delivered as an OTA update

This add-on is pure JavaScript โ€” no native code. Drop it into your project via the setup dashboard and push an over-the-air update. No app store rebuild, no review wait. Members get it on next app open.