BufferedTV for iPhone and iPad: an unofficial PeerTube client. Free and open source, built with love by Ric Harvey and supported by SquareCows. https://buffered.tv/apple/
  • Swift 98.8%
  • Shell 1.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Ric Harvey 1e7d611636
App Store screenshots of the iPhone Duo
Scripts/app-store-media.sh gains three iPhone Duo devices, one per posture:
duo-outer (closed), duo-laptop (standing part-open) and duo-spread (open
like a book or lying flat). Only Device Hub can fold the Duo simulator, so a
posture is set by hand and then run by name, and none of them is part of a
full run. They take screenshots only, since `simctl io` can't film the inner
display. The UI test shoots whichever display the posture shows, and opened
out it lays pages side by side as on iPad. Screenshot sizes may now be odd,
as the inner display's 2007×2853 is; previews still need even sides.

The six spread screenshots are in docs/app-store/screenshots/duo-spread.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 10:25:50 +00:00
BufferedTV Downloads to watch offline, and settings that follow you through iCloud 2026-11-03 10:18:39 +00:00
docs App Store screenshots of the iPhone Duo 2026-11-03 10:25:50 +00:00
Scripts App Store screenshots of the iPhone Duo 2026-11-03 10:25:50 +00:00
Tests Downloads to watch offline, and settings that follow you through iCloud 2026-11-03 10:18:39 +00:00
Tools App Store screenshots of the iPhone Duo 2026-11-03 10:25:50 +00:00
UITests App Store screenshots of the iPhone Duo 2026-11-03 10:25:50 +00:00
.gitignore BufferedTV for iPhone and iPad 2026-09-28 21:09:39 +01:00
BUILD.md Downloads to watch offline, and settings that follow you through iCloud 2026-11-03 10:18:39 +00:00
LICENSE MIT licence, as the Apple TV app has 2026-09-29 23:02:41 +01:00
PRIVACY.md The privacy policy says what goes to iCloud 2026-11-03 10:20:22 +00:00
project.yml Version 1.3: BufferedTV splits at the iPhone Duo's crease 2026-10-27 15:46:28 +00:00
README.md Downloads to watch offline, and settings that follow you through iCloud 2026-11-03 10:18:39 +00:00

BufferedTV for iPhone and iPad

An unofficial PeerTube client for iPhone and iPad. Free, open source, and built with ❤️ by Ric Harvey, supported by SquareCows.

This is the iOS and iPadOS companion to BufferedTV for Apple TV, with the same features rebuilt for touch. It lives at buffered.tv.

What is PeerTube?

PeerTube is video hosting that nobody owns. Instead of one company running one enormous site, thousands of independent servers, called instances, host their own videos and share them with each other. No algorithm deciding what you see, no adverts, no company.

What it does

  • Browse any instance. Trending, recently added, live now, top rated and local videos, with a full grid behind every shelf.
  • Search the whole network. Searches every public instance through SepiaSearch by default, and plays what it finds wherever it lives. Servers this device can't reach are left out rather than shown as blank cards.
  • Sign in, or don't. Subscriptions, playlists, Watch Later, history and continue watching, with two-factor sign-in. Or browse anonymously.
  • Watch properly. Each video has one page: the player at the top, with AVKit's full screen, Picture in Picture, AirPlay, subtitles, audio tracks and speed, and quality pinned to the best the instance published. Turn a phone sideways and the video fills the screen.
  • Have your say. Like or dislike, subscribe to the channel, save to Watch Later in one tap or to any playlist, share, and read, write and reply to comments.
  • Watch offline. Download a video from its page, with its subtitles, and it plays from the device with no connection needed. Downloads wait for Wi-Fi unless you allow mobile data. Open the app offline and it goes straight to your downloads. Downloads are deleted 30 days after they finish unless you change that, or turn it off, in Settings. The app honours an uploader's choice to turn downloads off.
  • Settings on every device. Your settings, blocks and the instance you use follow you between iPhone and iPad through iCloud, signed in or not. Sign-ins, downloads and parental controls stay on each device.
  • Subtitles in your language. Point it at a LibreTranslate server and it translates a video's subtitles while you watch.
  • Your feed, your way. Block an account or a whole server and it disappears everywhere, comments included. Report anything worse to the moderators.
  • Parental controls. Sensitive videos are hidden until you choose otherwise. Set a parental PIN and changing that needs it, or choose Ask for the PIN to enter it before each sensitive video plays. If the device shares an age range under 18, sensitive videos stay hidden.
  • Nothing is tracked. No analytics, no adverts, no third-party code, and no server of its own behind the app. See the privacy policy.

On an iPhone Duo it splits at the crease. Stand it up like a laptop and the video plays on the upper half, with the controls, the channel, Subscribe and the comments on the lower one; open it out like a book and the video sits on one side and the conversation on the other.

It also plays in Picture in Picture while you browse or leave the app, shows what is playing on the Lock Screen and in Control Centre, and answers Siri and Shortcuts ("Play what's trending on BufferedTV").

Accessibility

BufferedTV is meant to work however you use your iPhone or iPad.

  • VoiceOver. Every card, button and control is named. A video reads as its title, channel, length, views and age, and says when its thumbnail is blurred. Messages that come and go by themselves are read out, and anything offered with a swipe or a long press, such as replying to or reporting a comment, is in VoiceOver's actions too.
  • Voice Control. Buttons answer to what they show: "Tap Like", "Tap See all Trending", or a video's title.
  • Larger Text. Everything follows Dynamic Type up to the largest accessibility sizes. Rows that scroll sideways stack instead, and text laid over artwork moves underneath it.
  • Dark Interface. The app is dark throughout.
  • Colour and contrast. Text is 4.5:1 or better against whatever it sits on, and nothing relies on colour alone: links are underlined, blurred thumbnails say "Sensitive", and a video with subtitles shows a CC badge. Increase Contrast brightens the faintest text and the edges of cards.
  • Reduce Motion. The launch animation, notices and the Up next card fade in place rather than move.
  • Captions. The CC badge on a video's page says which languages its subtitles are in. With Closed Captions + SDH turned on in Settings, subtitles come on by themselves, in your language where there's a choice.

Audio descriptions depend on whoever made each video, so the app doesn't claim them.

Shared with the Apple TV app

The models, the PeerTube API client, sign-in, the stores, subtitle translation, the pinned-quality streams and the player model came across from the tvOS app almost unchanged, along with their tests. The interface is new: a tab bar on iPhone that becomes a sidebar on iPad, one watch page in place of the Apple TV's separate video page and full-screen player, and system sheets and forms for comments, reports, sign-in and settings. The Top Shelf has no iOS equivalent and was left out.

Building

See BUILD.md. You need Xcode 27.1 with the iOS 27.1 SDK, and XcodeGen.

Licence

MIT, as the Apple TV app is. Built with love by Ric Harvey, and supported by SquareCows.

PeerTube is a trademark of Framasoft. This app is not affiliated with, endorsed by or supported by the PeerTube project.