npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

node-firefox-start-simulator

v1.3.1

Published

Start a Firefox OS simulator

Downloads

30

Readme

node-firefox-start-simulator Build Status

Start a Firefox OS simulator.

Install with NPM

This is part of the node-firefox project.

Installation

From git

git clone https://github.com/mozilla/node-firefox-start-simulator.git
cd node-firefox-start-simulator
npm install

If you want to update later on:

cd node-firefox-start-simulator
git pull origin master
npm install

npm

npm install node-firefox-start-simulator

Usage

var startSimulator = require('node-firefox-start-simulator');

// `startSimulator` returns a Promise
startSimulator(options).then(function(simulator) {

});

where options is a plain Object with any of the following:

  • detached: start the simulator as a detached process. If our script is killed, the simulator will still be running.
  • port: make the simulator listen to this port for debugging. If not specified, we'll find an available port.
  • version: start a simulator in this version. If not specified, we'll start the first simulator that we can find.
  • verbose: pipe the output from the simulator to standard I/O. For example, you'll get JavaScript console.log messages executed in the simulator.

and simulator is an object containing:

  • binary: path to the simulator binary
  • bin: an alias to binary
  • profile: path to the simulator profile
  • pid: process id
  • process: the actual process object
  • port: the port where the simulator is listening for debugging connections

There is also a startSimulator.all() utility to launch many simulators at once:

startSimulator.all(options)(simulatorOptions)
  .then(function(launchedSimulators) {
    // launchedSimulators is a list of simulator objects
  });

The options parameter here is the same as above - these options will be commonly applied to all the simulators launched.

The call to startSimulator.all() returns a function that takes a list of simulators and returns a Promise to launch them all. The result of that Promise is launchedSimulators, a list of all the simulators that were launched.

Note: This function returning a function may seem like a roundabout way to do things, but take a look at the examples below to see how this works with findSimulators() and other Promise-based APIs.

Examples

Start any simulator on the first available port

var startSimulator = require('node-firefox-start-simulator');

startSimulator().then(function(simulator) {
  console.log('Started simulator at port', simulator.port);
}, function(err) {
  console.log('Error starting a simulator', err);
});

Start all simulators found on your system

var findSimulators = require('node-firefox-find-simulators');
var startSimulator = require('node-firefox-start-simulator');

// startSimulator.all() returns a function that applies the common options to
// all the simulators discovered by findSimulators()

findSimulators.then(startSimulator.all({ detached: true }));

Have a look at the examples folder for more!

Documentation

If you want to contribute to this module, it might be interesting to have a look at the way WebIDE launches the simulator. The code for this is in simulator-process.js. Whenever possible, we want to mimic the WebIDE experience as closely as possible.

History

This is based on initial work on fxos-start by Nicola Greco.