tvOS Bootcamp

atul khatri
2 min readJul 12, 2021

--

tvOS Bootcamp

This bootcamp is for iOS developers, who are willing to develop apps for the tvOS platform.

Apple TV (4th gen) runs on tvOS, which inherits many iOS frameworks & APIs, it also has a few frameworks specific to tvOS.

tvOS applications could be created in two way:

  1. TVML apps: Apple TV makes it easier to create client-server apps, whose primary purpose is to stream media, using web technologies such as HTTPS, XMLHTTPRequest, DOM, and JavaScript. You use Apple’s custom markup language, TVML, to create interfaces, and you specify app behaviors using JavaScript. The TVMLKit framework provides the bridge between your native code and the JavaScript code in your user interface. These types of apps are not the focus of this bootcamp as there is quite a steep learning curve for iOS developers due to the heavy use of web technologies. To learn more about this, please go through the official Apple documentation: https://developer.apple.com/documentation/tvml
  2. Native apps: These types of applications are made using native technologies like Objective-C, Swift or even SwiftUI and is the primary goal of this bootcamp. These applications use many commonly used iOS frameworks. It results in a very good performance when compared with TVML based apps.

For this bootcamp, we would be building a native video streaming app (OTT) using Swift language.

Before we start, let’s have a look at the resulting app.

Home Screen
Home Screen
Movie/Series Detail Screen
Movie/Series Detail Screen
Player
Player

Architecture:

To make this bootcamp easier to follow, this bootcamp is designed to be Architecture-agnostic i.e. it will only focus on the core concepts rather than following any specific architecture like MVP, MVVM etc.

Source Code:

Entire source code of this bootcamp is hosted on the following Git repository:

https://github.com/atulkhatri/tvos-bootcamp

Topics:

This bootcamp will cover the following topics:

  1. Creating a tvOS app from scratch
  2. Building a tab bar
  3. Create Network Manager
  4. Render Home Screen
  5. Create Detail Screen
  6. Handling Focus
  7. Customize video player

Now that we know the requirements, let’s begin the first topic on the next part of this blog

https://atulkhatri.medium.com/creation-of-a-tvos-app-from-scratch-6a7913408045

--

--

atul khatri

Software Engineer (iOS) @ Meta | Tech Enthusiast | Learner