{
  "name": "serrebiALT",
  "identifier": "com.serrebidev.source",
  "subtitle": "Accessible apps by serrebidev",
  "description": "Vibe-coded, screen-reader-first iOS apps by serrebidev.",
  "website": "https://github.com/serrebidev/serrebiALT",
  "tintColor": "#2B6CB0",
  "apps": [
    {
      "name": "Accessible IPTV",
      "bundleIdentifier": "dev.serrebi.accessibleiptv",
      "developerName": "serrebidev",
      "subtitle": "IPTV player built for VoiceOver.",
      "localizedDescription": "A screen-reader-friendly IPTV player for iPhone and iPad, with CarPlay audio. Xtream Codes logins, Stalker portals, M3U URLs and M3U files; Live TV, Movies and Series with groups, favourites and search, including voice search. XMLTV guide with On now, guide search and catch-up. The libVLC player plays raw MPEG-TS, HLS, MKV and MP4, picks audio description, remembers tracks per channel, reconnects dropped streams, casts to Chromecast and keeps playing with the screen locked. Record, schedule recordings and download. 14 languages.\n\nEvery list row is one VoiceOver stop with its extra choices in the Actions rotor; real, always-visible buttons; headings everywhere.",
      "iconURL": "https://raw.githubusercontent.com/serrebidev/Accessible-IPTV-Client-iOS/main/docs/icon.png",
      "category": "entertainment",
      "screenshots": [],
      "versions": [
        {
          "version": "0.2.0",
          "buildVersion": "11",
          "date": "2026-10-15",
          "localizedDescription": "Native iPhone tabs and categories-first browsing. Persistent video miniplayer and native background and lock-screen playback. Siri and Shortcuts tune channels, read now and next, search the guide and control playback. SharePlay shares channel selection and playback through FaceTime using each participant’s own playlist/login; native coordination for seekable movies, episodes and catch-up. Live timing depends on provider buffers. Translated controls and help in 14 languages. SharePlay installation requires the Group Activities entitlement.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.2.0/AccessibleIPTV-0.2.0-iOS.ipa",
          "size": 21582958,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.9",
          "buildVersion": "10",
          "date": "2026-10-14",
          "localizedDescription": "A category opens in a fraction of a second again. The list was building a row for every entry in the category instead of only the rows on screen; it is now built 2,000 rows at a time, and where there are more the end of the list has a More button saying how many are left.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.9/AccessibleIPTV-0.1.9-iOS.ipa",
          "size": 21298994,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.8",
          "buildVersion": "9",
          "date": "2026-10-14",
          "localizedDescription": "Measurement build for the slow category switch: when a category change or a list load takes over a second, the status line says what it cost. Also, the guide lookup a row makes is remembered for half a minute, so redrawing or scrolling does not repeat the same query for every row.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.8/AccessibleIPTV-0.1.8-iOS.ipa",
          "size": 21291996,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.7",
          "buildVersion": "8",
          "date": "2026-10-14",
          "localizedDescription": "Choosing a category is much faster on a big account: the channel list is built fresh for the category you chose instead of working out the difference from the previous one, which took seconds with tens of thousands of channels. Rows no longer animate when a whole list is replaced.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.7/AccessibleIPTV-0.1.7-iOS.ipa",
          "size": 21290224,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.6",
          "buildVersion": "7",
          "date": "2026-10-14",
          "localizedDescription": "An audit of the player, the recorder, CarPlay and voice search: recording a channel twice in a minute no longer writes both to one file, casting no longer ends with a wrong error, CarPlay playback keeps its lock screen and steering wheel play and pause, and the Voice button no longer crashes when pressed twice.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.6/AccessibleIPTV-0.1.6-iOS.ipa",
          "size": 21288242,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.5",
          "buildVersion": "6",
          "date": "2026-10-14",
          "localizedDescription": "An audit of 0.1.4: search finds a name whose accented letter the feed writes as a separate mark, names of the same rank sort by length again, a refreshed playlist no longer leaves a channel on an old guide entry, and deleting the last playlist clears the list.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.5/AccessibleIPTV-0.1.5-iOS.ipa",
          "size": 21285867,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.4",
          "buildVersion": "5",
          "date": "2026-10-14",
          "localizedDescription": "The category list on a phone is now a lazy list that opens from one button, so a provider with hundreds of categories is no longer slow to open or to redraw.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.4/AccessibleIPTV-0.1.4-iOS.ipa",
          "size": 21285792,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.3",
          "buildVersion": "4",
          "date": "2026-10-14",
          "localizedDescription": "No more long freeze when the app opens, comes back into focus, or switches between Live TV, Movies and Series: the guide index and the group counts no longer run on the main thread.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.3/AccessibleIPTV-0.1.3-iOS.ipa",
          "size": 21286105,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.2",
          "buildVersion": "3",
          "date": "2026-10-14",
          "localizedDescription": "Search is much faster: a keystroke over 50,000 channels went from 0.16 s to 0.01 s. A fresh launch no longer hashes every channel on the main thread.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.2/AccessibleIPTV-0.1.2-iOS.ipa",
          "size": 21285089,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.1",
          "buildVersion": "2",
          "date": "2026-10-14",
          "localizedDescription": "Much less CPU while the guide imports: the guide reader is about 12 times faster and skips channels you do not have. Xtream movie and series lists load about twice as fast. The channel list no longer redraws on every status change; fewer background timers in the player and recorder.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.1/AccessibleIPTV-0.1.1-iOS.ipa",
          "size": 21283831,
          "minOSVersion": "17.0"
        },
        {
          "version": "0.1.0",
          "buildVersion": "1",
          "date": "2026-10-14",
          "localizedDescription": "First iOS release, a port of Accessible IPTV Client for Android 0.2.11: Xtream, Stalker and M3U; guide with catch-up; libVLC player that plays raw MPEG-TS; recordings; 14 languages. Built for VoiceOver.",
          "downloadURL": "https://github.com/serrebidev/Accessible-IPTV-Client-iOS/releases/download/v0.1.0/AccessibleIPTV-0.1.0-iOS.ipa",
          "size": 21277836,
          "minOSVersion": "17.0"
        }
      ],
      "appPermissions": {
        "entitlements": [
          "com.apple.developer.group-session"
        ],
        "privacy": {
          "NSLocalNetworkUsageDescription": "Finds Chromecast devices to cast to.",
          "NSMicrophoneUsageDescription": "Voice search listens for a channel name.",
          "NSSpeechRecognitionUsageDescription": "Voice search turns what you say into a search."
        }
      },
      "tintColor": "#0B5394"
    }
  ],
  "news": [
    {
      "title": "Accessible IPTV for iOS",
      "identifier": "accessibleiptv-0.1.0",
      "caption": "The VoiceOver-first IPTV player is here.",
      "date": "2026-10-14",
      "tintColor": "#0B5394",
      "appID": "dev.serrebi.accessibleiptv",
      "notify": true
    }
  ],
  "iconURL": "https://raw.githubusercontent.com/serrebidev/Accessible-IPTV-Client-iOS/main/docs/icon.png"
}
