All Projects → Igor-Palaguta → YoutubeEngine

Igor-Palaguta / YoutubeEngine

Licence: MIT License
Swift ReactiveCocoa lib for Youtube api

Programming Languages

swift
15916 projects
ruby
36898 projects - #4 most used programming language
objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to YoutubeEngine

Reactivecocoa
Cocoa framework and Obj-C dynamism bindings for ReactiveSwift.
Stars: ✭ 20,013 (+83287.5%)
Mutual labels:  reactiveswift, reactivecocoa
Moya-Gloss
Gloss bindings for Moya
Stars: ✭ 37 (+54.17%)
Mutual labels:  reactiveswift, reactivecocoa
Ios Oss
Kickstarter for iOS. Bring new ideas to life, anywhere.
Stars: ✭ 7,840 (+32566.67%)
Mutual labels:  reactiveswift, reactivecocoa
ACKReactiveExtensions
Set of useful extensions for ReactiveSwift & ReactiveCocoa
Stars: ✭ 17 (-29.17%)
Mutual labels:  reactiveswift, reactivecocoa
Easyreact
Are you confused by the functors, applicatives, and monads in RxSwift and ReactiveCocoa? It doesn't matter, the concepts are so complicated that not many developers actually use them in normal projects. Is there an easy-to-use way to use reactive programming? EasyReact is born for this reason.
Stars: ✭ 1,616 (+6633.33%)
Mutual labels:  reactive, reactivecocoa
MVVM-Sample
Swift MVVM Sample project. Made with ReactiveCocoa, Swinject and Routers
Stars: ✭ 21 (-12.5%)
Mutual labels:  reactive, reactiveswift
a-feign-like-rsocket-client
@Mario5Gray had a great idea - a Feign for RSocket. So, here it is.
Stars: ✭ 20 (-16.67%)
Mutual labels:  reactive
jda-reactor
A collection of kotlin extensions for JDA that make use with reactor-core easier.
Stars: ✭ 20 (-16.67%)
Mutual labels:  reactive
reacnetgenerator
an automatic reaction network generator for reactive molecular dynamics simulation
Stars: ✭ 25 (+4.17%)
Mutual labels:  reactive
mono-reactive
open source Reactive Extensions (Rx) implementation for Mono
Stars: ✭ 65 (+170.83%)
Mutual labels:  reactive
vue-rxjs
Yet another rxjs binding library for Vue.js
Stars: ✭ 14 (-41.67%)
Mutual labels:  reactive
stimulus todomvc
[WIP] An implementation of TodoMVC using Ruby on Rails and StimulusJS
Stars: ✭ 14 (-41.67%)
Mutual labels:  reactive
delta
DDD-centric event-sourcing library for the JVM
Stars: ✭ 15 (-37.5%)
Mutual labels:  reactive
vertx-mongo-client
Mongo Client for Eclipse Vert.x
Stars: ✭ 54 (+125%)
Mutual labels:  reactive
observable ish
Observable state and events for browser and Flutter.
Stars: ✭ 26 (+8.33%)
Mutual labels:  reactive
reflex-dom-semui
A reflex-dom API for Semantic UI components
Stars: ✭ 22 (-8.33%)
Mutual labels:  reactive
pardall markdown
Reactive publishing framework, filesystem-based with support for Markdown, nested hierarchies, and instant content rebuilding. Written in Elixir.
Stars: ✭ 84 (+250%)
Mutual labels:  reactive
patternfly-fritz2
Pure Kotlin implementation of PatternFly
Stars: ✭ 31 (+29.17%)
Mutual labels:  reactive
rxdeep
rxjs deep state management
Stars: ✭ 47 (+95.83%)
Mutual labels:  reactive
Mp3ID3Tagger
🎶🎵A macOS application to edit the ID3 tag of your mp3 files. Developed with RxSwift and RxCocoa. 🎸🎼
Stars: ✭ 17 (-29.17%)
Mutual labels:  reactive

Build Status

YoutubeEngine

Library with ReactiveCocoa api for Youtube. Allows easy access required parts of videos and channels in one call.

Screenshots

YoutubeEngine

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

  1. search list by keyword, videos from channel, related videos

  2. channels list by identifiers or my

  3. videos list by identifiers or popular

  4. 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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].