- Swift 98.7%
- Shell 1.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
BufferedTV is to have a PeerTube instance of its own, announced on buffered.tv on 14 October 2026, so the policy can no longer say that nothing is sent to the developer because the developer has no server. It now says that the app has no server of its own behind it and reports nothing to the developer, and that the instance, when it opens, will be an instance like any other, with a privacy policy of its own. This matches the policy at buffered.tv/privacy. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZ5UTv5NoGZ2RXESPiisne |
||
| BufferedTV | ||
| docs | ||
| Scripts | ||
| Tests | ||
| Tools | ||
| UITests | ||
| .gitignore | ||
| BUILD.md | ||
| LICENSE | ||
| PRIVACY.md | ||
| project.yml | ||
| README.md | ||
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.
- 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 ours. See the privacy policy.
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 with the iOS 27 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.