Skip to content

2600hz/monster-ui

Repository files navigation

The JavaScript framework to leverage the power of Kazoo.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development purposes. See the Using Docker section for notes on how to automate the following steps by running a script within a Docker container

Prerequisites

Install

Clone the official monster-ui repository:

git clone https://github.com/2600hz/monster-ui.git monster-ui

Go to the project's folder:

cd monster-ui

Install dependencies:

npm install

Configure

In order for the UI to load the data from your server, we need to specify which API to use. To do so, open the config.js file located in src/js/ folder and add the URL of your server as the value of the default property.

define({
    api: {
    	'default': 'http://my.kazoo.server/'
    }
  }
});

For a full list and comprehensive descriptions of all the configurable options, head over to the dedicated documentation.

Build

Use the gulp command to build and launch the web server

gulp

Access your development environment at http://localhost:3000/

For more info on how the gulp command works, head over to the dedicated documentation.

Using Docker

If you are using Docker containers, we made it easy for you to set up a development environment. You will just need to clone the monster-ui repository and add your API URL to the config.js file as explained in the Install and Configure sections. After that, execute our custom serve.sh script (made by Pierre Fenoll) in your Docker container:

./serve.sh

This script will install npm and gulp, as well as the npm dependencies and finally run the gulp command. You will be able to access the development environment at http://localhost:3000/.

It also starts by pulling your apps installed in src/apps before starting the server. To disable this behavior use the no-update flag:

./serve.sh no-update

Running the tests

Selenium IDE tests

A Selenium IDE test project may be included within each app directory, under a folder named tests.

To run the test cases contained in these project, you have two options: run it via the Selenium IDE browser extension, or via the command line runner.

Run tests via the Selenium IDE

For this option the Selenium IDE extension should be installed in a supported web browser.

Upon launching the IDE you will be presented with a dialog where you can choose the option Open an existing project, to search and open the test project file in your computer.

Then you can play the tests cases back in the IDE by selecting the test or suite you'd like to play and clicking the play button in the menu bar above the test editor. This will play the tests in a browser window.

Run tests via the command line runner

For this option you need to install the Selenium IDE command-line runner, and the driver for the browser of your choice.

Once everything is installed, the tests can be run by calling selenium-side-runner from the command-line followed by the path to the project file.

$ selenium-side-runner path/to/testProject.side

Documentation

You can find all the documentation related to Monster UI on the dedicated website.

The documentation is stored on this repository (/docs) which allows you to easily improve it or add new pages when making PRs against the core of Monster UI.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

This project is licensed under the Mozilla Public License - see the LICENSE file for details.