Skip to content

rwth-acis/VideoDrawingDemo

Repository files navigation

SeViAnno Video Drawing Demo

Collaborative Annotations on Web Videos

Getting Started

To run the Video Drawing Demo you need to:

  1. Get a copy of the code.
  2. Install the dependencies if you don't already have them.
  3. Modify the application to your liking.
  4. Deploy your production code.

Install dependencies

Quick-start (for experienced users)

With Node.js installed, run the following one liner from the root of your Video Drawing Demo download:

npm install -g gulp bower && npm install && bower install

Prerequisites (for everyone)

The full Video Drawing Demo requires the following major dependencies:

  • Node.js, used to run JavaScript tools from the command line.
  • npm, the node package manager, installed with Node.js and used to install Node.js packages.
  • gulp, a Node.js-based build tool.
  • bower, a Node.js-based package manager used to install front-end packages (like Polymer).

To install dependencies:

  1. Check your Node.js version.
node --version

The version should be at or above 0.12.x.

  1. If you don't have Node.js installed, or you have a lower version, go to nodejs.org and click on the big green Install button.

  2. Install gulp and bower globally.

npm install -g gulp bower

This lets you run gulp and bower from the command line.

  1. Install the Video Drawing Demo's local npm and bower dependencies.
cd VideoDrawingDemo && npm install && bower install

This installs the element sets (Paper, Iron, Platinum) and tools the Video Drawing Demo requires to build and serve the app.

Development workflow

Serve / watch

gulp serve

This outputs an IP address you can use to locally test and another that can be used on devices connected to your network.

Run tests

gulp test:local

This runs the unit tests defined in the app/test directory through web-component-tester.

Build & Vulcanize

gulp

Build and optimize the current project, ready for deployment. This includes linting as well as vulcanization, image, script, stylesheet and HTML optimization and minification.