2.7.12 • Published 4 years ago

zombiebox v2.7.12

Weekly downloads
32
License
MIT
Repository
github
Last release
4 years ago

ZombieBox

ZombieBox is a JavaScript framework for development of Smart TV and STB applications.

Why ZombieBox?

  • It's cross-platform;
  • It leverages a strongly typed JavaScript by Google Closure Compiler and modern ECMAScript;
  • It provides a set of typical solutions for TV, such as spatial navigation or remote logging;
  • It produces a fast application that has a small size and a minimum of 3rd party code;

Getting started

Init a node.js project:

npm init

Install ZombieBox and some of its components that you will most likely need:

npm install zombiebox
npm install zombiebox-platform-pc zombiebox-extension-cutejs

Either create application config.js manually and start developing or start with a boilerplate:

npx zombiebox init $NAME

# or without npx:
./node_modules/zombiebox/bin/cli.js init

Run the development server:

npx zombiebox run

Platforms

ZombieBox supports a lot of modern Smart TV and STB platforms and also some legacy but high-demand platforms, which allows you to deliver your application to a wide number of devices. Any capable platform can be easily support by extending it.

Platforms are a subtype of ZombieBox Addon. See addons for more information.

List of supported platforms:

PlatformPackageVersion
Desktop browserszombiebox-platform-pcnpm.io
Android TVzombiebox-platform-android-tvnpm.io
Samsung Tizen (2015+)zombiebox-platform-tizennpm.io
Samsung Orsay (2012-2014)zombiebox-platform-samsungnpm.io
LG webOS (2014+)zombiebox-platform-webosnpm.io
LG NetCast (2012-2014)zombiebox-platform-lgnpm.io
MAG STBzombiebox-platform-magnpm.io
Dune HDzombiebox-platform-dunenpm.io

Archived platforms:

PlatformPackageVersion
Headless browserszombiebox-platform-headlessnpm.io
Eltex STBzombiebox-platform-eltexnpm.io
TVIP STBzombiebox-platform-tvipnpm.io

Installation of a new platform is easy and nothing more than installation of a new npm package with further saving in the dependencies.

For example, for LG Netcast platform:

npm i zombiebox-platform-lg --save

Then configure the installed platform for building of a distribution package:

// Your config.js

module.exports = () => ({
	platforms: {
		lg: {
			// Some platform-specific configuration, see platform documentation
		}
	}
});

Finally, build a package:

npx zombiebox build lg

Extensions:

Extension is a special npm package that extends default functionality of the framework. To add an extension just install a package via npm and save it in the dependencies.

Extensions are a subtype of ZombieBox Addon. See addons for more information.

List of available extensions:

DescriptionPackageVersion
CuteJS Template enginezombiebox-extension-cutejsnpm.io
Set of basic TV-oriented componentszombiebox-extension-uinpm.io
Dependency Injectionzombiebox-extension-dependency-injectionnpm.io
I18n supportzombiebox-extension-i18nnpm.io
Tools for Pixel Perfect testingzombiebox-extension-pixelperfectnpm.io
Popup with main info about the applicationzombiebox-extension-aboutnpm.io
Lodash library integrationzombiebox-extension-lodashnpm.io
Environment for interactive UI developmentzombiebox-extension-storybooknpm.io
Emoji supportzombiebox-extension-emojinpm.io
Subtitleszombiebox-extension-ui-subtitlesnpm.io

Configuration

Configuration file is a module that exports a function returning configuration object.

By default, the framework will try to find file config.js in the root of the project, but you can set a custom path passing --config to the CLI commands.

See configuration for details.

CLI commands

Use npx to access ZombieBox CLI utility: npx zombiebox or npx zb.

  • npx zb init <name> [root] - generates skeleton of a project interactively
  • npx zb run - starts the development server
  • npx zb build <platforms..> - builds a distribution package
  • npx zb buildCode - generates runtime code
  • npx zb (addScene|addPopup|addWidget) <name> [path] - generates boilerplate code for UI components
  • npx zb generateAliases [filename] - generates alias map for development tools
  • npx zb <platform> <command> - runs a specific command provided by a specific platform

Change log

See the CHANGELOG.md.

Version policy

ZombieBox is not semver compatible. We tried, but this wasn't working well. ZombieBox tries it's best to follow a version policy close to semver that makes sense.

  • Major versions denote major changes in code structure and APIs. It's probably either a brand new framework or requires extensive migration if major version changed.
  • Minor versions mean new features. There might be breaking changes in minor versions, but they likely require minor migrations like changing methods order, signatures or replacing one component with another equivalent. These should be documented in CHANGELOG.md and migratiosn docs.
  • Patch versions do not introduce breaking changes and either fix bugs or add neglectable improvements in non-breaking way.
  • Pre-release versions are meant to contain experimental features that are going to be introduced later and are likely to break compatibility and be generally unstable. These are only pushed to @dev dist-tag.

All ZombieBox components declare their dependencies on each other with peerDependencies field in package.json. Node itself does not enforce this field, but ZombieBox does in its CLI commands.

Behind ZombieBox

ZombieBox was developed and is maintained by Interfaced.

It was created as internal framework for numerous Smart TV and STB applications developed for industry leaders.

License

This library is distributed under MIT license. See LICENSE.

Copyright © 2012-2021, Interfaced. All rights reserved. If you have any questions about license, please write to licensing@zombiebox.tv.

2.7.11

4 years ago

2.7.12

4 years ago

2.7.10

4 years ago

2.7.9

4 years ago

2.7.8

4 years ago

2.7.7

4 years ago

2.7.6

4 years ago

2.7.5

5 years ago

2.7.4

5 years ago

2.7.4-alpha.1

5 years ago

2.7.3

5 years ago

2.7.2

5 years ago

2.7.1

5 years ago

2.7.0

5 years ago

2.6.1

5 years ago

2.6.0

5 years ago

2.5.0

5 years ago

2.5.0-rc.1

5 years ago

2.4.0

6 years ago

2.4.0-rc.2

6 years ago

2.4.0-rc.1

6 years ago

2.4.0-alpha.6

6 years ago

2.4.0-alpha.5

6 years ago

2.4.0-alpha.4

6 years ago

2.4.0-alpha.3

6 years ago

2.4.0-alpha.2

6 years ago

2.4.0-alpha.1

6 years ago

2.3.0

6 years ago

2.2.3

6 years ago

2.2.2

6 years ago

2.2.1

6 years ago

2.2.0

6 years ago

2.1.3

6 years ago

2.1.2

6 years ago

2.1.1

6 years ago

2.1.0

6 years ago

2.0.2

6 years ago

2.0.1

6 years ago

2.0.0

6 years ago

2.0.0-rc.2

6 years ago

2.0.0-rc.1

6 years ago

2.0.0-alpha.8

6 years ago

2.0.0-alpha.7

6 years ago

2.0.0-alpha.6

6 years ago

2.0.0-alpha.5

6 years ago

2.0.0-alpha.4

6 years ago

2.0.0-alpha.3

6 years ago

2.0.0-alpha.2

6 years ago

2.0.0-alpha.1

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago

1.0.0-beta6

6 years ago

0.2.15

7 years ago

1.0.0-beta5

7 years ago

1.0.0-beta4

7 years ago

1.0.0-beta3

7 years ago

0.2.14

7 years ago

0.1.32

7 years ago

1.0.0-beta2

7 years ago

0.2.13

7 years ago

0.2.12

7 years ago

0.2.11

7 years ago

0.2.10

7 years ago

0.2.9

7 years ago

0.1.31

7 years ago

1.0.0-alpha12

7 years ago

1.0.0-beta1

7 years ago

0.2.8

7 years ago

0.1.30

7 years ago

1.0.0-alpha11

8 years ago

1.0.0-alpha10

8 years ago

1.0.0-alpha9

8 years ago

1.0.0-alpha8

8 years ago

1.0.0-alpha7

8 years ago

0.2.7

8 years ago

0.1.29

8 years ago

0.2.6

8 years ago

0.1.28

8 years ago

0.2.5

8 years ago

0.1.27

8 years ago

1.0.0-alpha6

8 years ago

0.2.4

8 years ago

0.1.26

8 years ago

1.0.0-alpha5

8 years ago

1.0.0-alpha4

8 years ago

1.0.0-alpha3

8 years ago

0.2.3

8 years ago

0.1.25

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

1.0.0-alpha2

8 years ago

1.0.0-alpha1

8 years ago

0.2.0

8 years ago

0.1.24

8 years ago

0.1.23

9 years ago

0.1.22

9 years ago

0.2.0-alpha2.7

9 years ago

0.2.0-alpha2.6

9 years ago

0.1.20

9 years ago

0.1.19

9 years ago

0.1.18

9 years ago

0.2.0-alpha2.5

9 years ago

0.1.17

9 years ago

0.2.0-alpha2.4

9 years ago

0.1.16

9 years ago

0.2.0-alpha2.3

9 years ago

0.2.0-alpha2.2

9 years ago

0.1.15

9 years ago

0.1.13

9 years ago

0.1.12

9 years ago

0.1.11

9 years ago

0.2.0-alpha2.1

9 years ago

0.2.0-alpha2

9 years ago

0.2.0-alpha1

9 years ago

0.1.10

9 years ago

0.1.9

9 years ago

0.1.8

9 years ago

0.1.7

9 years ago

0.1.6

9 years ago

0.1.5

9 years ago

0.1.4

9 years ago

0.1.3

9 years ago

0.1.2

9 years ago

0.1.1

9 years ago

0.1.0

9 years ago

0.0.199

9 years ago

0.0.198

9 years ago

0.0.197

10 years ago

0.0.196

10 years ago

0.0.195

10 years ago

0.0.194

10 years ago

0.0.193

10 years ago

0.0.192

10 years ago

0.0.191

10 years ago

0.0.190

10 years ago

0.0.189

10 years ago

0.0.188

10 years ago

0.0.187

10 years ago

0.0.186

10 years ago

0.0.185

10 years ago

0.0.184

10 years ago

0.0.183

10 years ago

0.0.182

10 years ago

0.0.180

10 years ago

0.0.179

10 years ago

0.0.178

10 years ago

0.0.176

10 years ago

0.0.175

10 years ago

0.0.174

11 years ago

0.0.173

11 years ago

0.0.172

11 years ago

0.0.171

11 years ago

0.0.170

11 years ago

0.0.168

11 years ago

0.0.167

11 years ago

0.0.166

11 years ago

0.0.165

11 years ago

0.0.163

11 years ago

0.0.162

11 years ago

0.0.161

11 years ago

0.0.160

11 years ago

0.0.159

11 years ago

0.0.158

11 years ago

0.0.157

11 years ago

0.0.156

11 years ago

0.0.155

11 years ago

0.0.154

11 years ago

0.0.153

11 years ago

0.0.152

11 years ago

0.0.151

11 years ago

0.0.150

11 years ago

0.0.149

11 years ago

0.0.148

11 years ago

0.0.147

11 years ago

0.0.146

11 years ago

0.0.145

11 years ago

0.0.144

11 years ago

0.0.143

11 years ago

0.0.142

11 years ago

0.0.141

11 years ago

0.0.140

11 years ago

0.0.139

11 years ago

0.0.138

11 years ago

0.0.137

11 years ago

0.0.136

11 years ago

0.0.135

11 years ago

0.0.134

11 years ago

0.0.133

11 years ago

0.0.131

11 years ago

0.0.130

11 years ago

0.0.129

11 years ago

0.0.128

11 years ago

0.0.127

11 years ago

0.0.126

11 years ago

0.0.125

11 years ago

0.0.123

11 years ago

0.0.122

11 years ago

0.0.121

11 years ago

0.0.119

11 years ago

0.0.118

11 years ago

0.0.117

11 years ago

0.0.115

11 years ago

0.0.114

11 years ago

0.0.113

11 years ago

0.0.112

11 years ago

0.0.111

11 years ago

0.0.110

11 years ago

0.0.109

11 years ago

0.0.108

11 years ago

0.0.107

11 years ago

0.0.106

11 years ago

0.0.105

11 years ago

0.0.103

12 years ago

0.0.102

12 years ago

0.0.101

12 years ago

0.0.100

12 years ago

0.0.99

12 years ago

0.0.98

12 years ago

0.0.97

12 years ago

0.0.96

12 years ago

0.0.95

12 years ago

0.0.94

12 years ago

0.0.93

12 years ago

0.0.92

12 years ago

0.0.90

12 years ago

0.0.89

12 years ago

0.0.35

12 years ago

0.0.88

12 years ago

0.0.87

12 years ago

0.0.86

12 years ago

0.0.85

12 years ago

0.0.82

12 years ago

0.0.81

12 years ago

0.0.80

12 years ago

0.0.79

12 years ago

0.0.78

12 years ago

0.0.77

12 years ago

0.0.76

12 years ago

0.0.75

12 years ago

0.0.74

12 years ago

0.0.73

12 years ago

0.0.72

12 years ago

0.0.71

12 years ago

0.0.69

12 years ago

0.0.68

12 years ago

0.0.67

12 years ago

0.0.66

12 years ago

0.0.65

12 years ago

0.0.64

12 years ago

0.0.63

12 years ago

0.0.62

12 years ago

0.0.61

12 years ago

0.0.60

12 years ago

0.0.59

12 years ago

0.0.58

12 years ago

0.0.55

12 years ago

0.0.54

12 years ago

0.0.53

12 years ago

0.0.52

12 years ago

0.0.51

12 years ago

0.0.50

12 years ago

0.0.49

12 years ago

0.0.48

12 years ago

0.0.47

12 years ago

0.0.45

12 years ago

0.0.44

12 years ago

0.0.43

12 years ago

0.0.42

12 years ago

0.0.40

12 years ago

0.0.39

12 years ago

0.0.38

12 years ago

0.0.37

12 years ago

0.0.34

12 years ago

0.0.33

12 years ago

0.0.32

12 years ago

0.0.31

12 years ago

0.0.23

12 years ago

0.0.22

12 years ago

0.0.21

12 years ago

0.0.20

12 years ago

0.0.19

12 years ago

0.0.18

12 years ago

0.0.17

12 years ago

0.0.16

12 years ago

0.0.15

12 years ago

0.0.14

12 years ago

0.0.12

12 years ago

0.0.11

12 years ago

0.0.10

12 years ago

0.0.9

12 years ago

0.0.8

12 years ago

0.0.7

12 years ago

0.0.6

12 years ago

0.0.5

12 years ago

0.0.4

12 years ago

0.0.3

12 years ago

0.0.2

12 years ago