YoutubeEngine
                                
                                
                                
                                    YoutubeEngine copied to clipboard
                            
                            
                            
                        Swift ReactiveCocoa lib for Youtube api
YoutubeEngine
Library with ReactiveCocoa api for Youtube. Allows easy access required parts of videos and channels in one call.
Screenshots

Example
To run the example project, clone the repo, and run carthage checkout.
let engine = Engine(authorization: .key(YOUR_API_KEY))
let request: SearchRequest = .search(withTerm: "VEVO",
                                     requiredVideoParts: [.statistics, .contentDetails],
                                     requiredChannelParts: [.statistics],
                                     requiredPlaylistParts: [.snippet],
                                     limit: 20)
engine.search(request)
    .startWithResult { result in
        guard case .success(let page) = result else {
            return
        }
        let formattedItems = page.items.enumerated().map { "[\($0)] = \($1)" }
        print("VEVO:\n\(formattedItems.joined(separator: "\n"))")
    }
Requirements
Supports Swift 5
Installation
Cocoapods
pod "YoutubeEngine", :git => 'https://github.com/Igor-Palaguta/YoutubeEngine', :tag => '0.7.0'
Carthage
github "Igor-Palaguta/YoutubeEngine" ~> 0.7.0
SPM
.package(url: "https://github.com/Igor-Palaguta/YoutubeEngine", .upToNextMinor(from: "0.7.0"))
Implemented API
- 
search list by keyword, videos from channel, related videos
 - 
channels list by identifiers or my
 - 
videos list by identifiers or popular
 - 
playlistItems list by identifiers or from playlist
 
Author
Igor Palaguta, [email protected]
License
YoutubeEngine is available under the MIT license. See the LICENSE file for more info.