
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
zombiebox
Advanced tools
ZombieBox is a JavaScript framework for development of Smart TV and STB applications
ZombieBox is a JavaScript framework for development of Smart TV and STB applications.
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
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:
| Platform | Package | Version |
|---|---|---|
| Desktop browsers | zombiebox-platform-pc | |
| Android TV | zombiebox-platform-android-tv | |
| Samsung Tizen (2015+) | zombiebox-platform-tizen | |
| Samsung Orsay (2012-2014) | zombiebox-platform-samsung | |
| LG webOS (2014+) | zombiebox-platform-webos | |
| LG NetCast (2012-2014) | zombiebox-platform-lg | |
| MAG STB | zombiebox-platform-mag | |
| Dune HD | zombiebox-platform-dune |
Archived platforms:
| Platform | Package | Version |
|---|---|---|
| Headless browsers | zombiebox-platform-headless | |
| Eltex STB | zombiebox-platform-eltex | |
| TVIP STB | zombiebox-platform-tvip |
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
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:
| Description | Package | Version |
|---|---|---|
| CuteJS Template engine | zombiebox-extension-cutejs | |
| Set of basic TV-oriented components | zombiebox-extension-ui | |
| Dependency Injection | zombiebox-extension-dependency-injection | |
| I18n support | zombiebox-extension-i18n | |
| Tools for Pixel Perfect testing | zombiebox-extension-pixelperfect | |
| Popup with main info about the application | zombiebox-extension-about | |
| Lodash library integration | zombiebox-extension-lodash | |
| Environment for interactive UI development | zombiebox-extension-storybook | |
| Emoji support | zombiebox-extension-emoji | |
| Subtitles | zombiebox-extension-ui-subtitles |
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.
Use npx to access ZombieBox CLI utility: npx zombiebox or npx zb.
npx zb init <name> [root] - generates skeleton of a project interactivelynpx zb run - starts the development servernpx zb build <platforms..> - builds a distribution packagenpx zb buildCode - generates runtime codenpx zb (addScene|addPopup|addWidget) <name> [path] - generates boilerplate code for UI componentsnpx zb generateAliases [filename] - generates alias map for development toolsnpx zb <platform> <command> - runs a specific command provided by a specific platformSee the CHANGELOG.md.
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.
@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.
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.
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.
FAQs
ZombieBox is a JavaScript framework for development of Smart TV and STB applications
We found that zombiebox demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.