Case study
BunATV: reconstructing Apple TV control protocols in TypeScript
BunATV reconstructs Apple TV control protocols as a Bun and TypeScript library with a companion CLI. It implements Companion pairing and remote input, MRP playback and state messages, and AirPlay transport layers, exposing messages close to their wire format. The author credits PyATV research and reports finding additional MRP messages through Ghidra analysis of Apple frameworks.
- Targets
- Protocol
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C2 code & docs, no demo or download
- Stars
- 8
- Last commit
- 2026-06-16
- Language
- TypeScript
GitHub data as of 2026-11-10
Evidence
- Observed
- Code and documentation observed; no download method or demo found.
- Checked
- 2026-11-09
Requirements & limits
- Prerequisites: Bun is required to run the library and CLI from source.
- Limits: The project describes itself as an unstable alpha; APIs, CLI flags, output formats and credential storage may change.
- Limits: Voice input, game-controller input, playback migration and endpoint discovery remain unimplemented.
- License: MIT license is stated in the README.
Cite
BibTeX
@misc{bunatv-apple-tv-protocol-case,
title = {{BunATV: reconstructing Apple TV control protocols in TypeScript}},
howpublished = {\url{https://github.com/JarekToro/bunatv}},
url = {https://github.com/JarekToro/bunatv},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/bunatv-apple-tv-protocol-case/}}
}Plain text
BunATV: reconstructing Apple TV control protocols in TypeScript. https://github.com/JarekToro/bunatv (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/bunatv-apple-tv-protocol-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · JarekToro/bunatv · Revision b3842e3
More in Protocols
- Ember Mug: decoding the on-device drink-log stream · Case study
- PreSonus Quantum Linux: investigating Quantum 2626 control for Linux audio · Case study
- Berbel Remote Emulator: reconstructing kitchen-hood BLE controls · Case study
- KuKirin G4: decoding BLE ride-mode notifications · Case study
- Mutant Brain: mapping its SysEx configuration format · Case study
- TBBT A9 mini camera: reconstructing PPPP video login · Case study