---
title: TVMLKit
framework: TVMLKit
role: collection
role_heading: Framework
platforms: [tvOS 9.0+]
path: tvmlkit
---

# TVMLKit

Create client-server apps by incorporating JavaScript and TVML files in your binary app.

## Overview

Overview The TVMLKit framework enables you to evaluate TVMLKit JS and TVML files from within your tvOS app. You can create TVML elements, styles, views, and view controllers through the JavaScript environment.

## Topics

### JavaScript Environment

- [Implementing a Hybrid TV App with TVMLKit](tvmlkit/implementing-a-hybrid-tv-app-with-tvmlkit.md)
- [TVApplicationController](tvmlkit/tvapplicationcontroller.md)
- [TVApplicationControllerContext](tvmlkit/tvapplicationcontrollercontext.md)

### Views and View Controllers

- [TVViewElement](tvmlkit/tvviewelement.md)
- [TVInterfaceCreating](tvmlkit/tvinterfacecreating.md)
- [TVInterfaceFactory](tvmlkit/tvinterfacefactory.md)
- [TVBrowserViewController](tvmlkit/tvbrowserviewcontroller.md)
- [TVDocumentViewController](tvmlkit/tvdocumentviewcontroller.md)

### Custom Elements

- [TVElementFactory](tvmlkit/tvelementfactory.md)
- [TVImageElement](tvmlkit/tvimageelement.md)
- [TVTextElement](tvmlkit/tvtextelement.md)
- [Creating TVML Elements](tvmlkit/creating-tvml-elements.md)

### Custom Styles

- [TVViewElementStyle](tvmlkit/tvviewelementstyle.md)
- [TVStyleFactory](tvmlkit/tvstylefactory.md)
- [TVColor](tvmlkit/tvcolor.md)

### Custom Player

- [TVMediaItem](tvmlkit/tvmediaitem.md)
- [TVPlaylist](tvmlkit/tvplaylist.md)
- [TVPlayer](tvmlkit/tvplayer.md)

### Errors

- [TVMLKitErrorDomain](tvmlkit/tvmlkiterrordomain.md)
- [TVMLKitError](tvmlkit/tvmlkiterror.md)
- [TVDocumentError](tvmlkit/tvdocumenterror-swift.struct.md)

### Reference

- [TVMLKit Enumerations](tvmlkit/tvmlkit-enumerations.md)
- [TVMLKit Constants](tvmlkit/tvmlkit-constants.md)
