class Stremio::Addon::DevKit::Manifest

Overview

A Manifest consists of a collection of ResourceTypes Source: https://github.com/Stremio/stremio-addon-sdk/blob/master/docs/api/responses/manifest.md

Included Modules

Defined in:

stremio-addon-devkit/manifest.cr

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(id : String, name : String, description : String, version : String, logo : Nil | String = nil) #

[View source]
def self.new(pull : JSON::PullParser) #

[View source]

Class Method Detail

def self.build(*args, **named_args, &) #

A static function call to inline the complete construction of a manifest object.

Example:

manifest = Manifest(ContentType).build(
  id: "com.stremio.addon.example",
  name: "DemoAddon",
  description: "An example stremio addon",
  version: "0.0.1") do |conf|
  conf << CatalogMovie.new(ContentType::Movie, "movie4u", "Movies for you")
end

TODO Should this be moved into the macro? As a method on .new()?


[View source]

Instance Method Detail

def <<(x : CatalogMovie) : self #

[View source]
def catalog_movies : Array(Stremio::Addon::DevKit::CatalogMovie) #

[View source]
def catalog_movies=(catalog_movies : Array(Stremio::Addon::DevKit::CatalogMovie)) #

[View source]
def catalogs(json : JSON::Builder) : Nil #

[View source]
def description : String #

#description: required - string, human readable description


[View source]
def each_catalog(&) #

[View source]
def id : String #

#id: required - string, identifier, dot-separated, e.g. "com.stremio.filmon"


[View source]
def idPrefixes(json : JSON::Builder) : Nil #

[View source]
def logo : String | Nil #

#logo: optional - string, a url to a small logo to use in stremio (ie: https://www.stremio.com/website/stremio-logo-small.png)


[View source]
def name : String #

#name: required - string, human readable name


[View source]
def resources(json : JSON::Builder) : Nil #

[View source]
def resources : Array(ManifestResource) #

Resource


[View source]
def types(json : JSON::Builder) : Nil #

[View source]
def types : Set(ContentType) #

[View source]
def version : String #

#version: required - string, semantic version of the addon


[View source]