You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long. 2.8KB

Developing Vaadin components

Each Vaadin component has it’s own GitHub repository, where development is done. The vaadin-core project is just a top-level bundle without actual production code.

Familiarize yourself with the code and try to follow the same syntax conventions to make it easier for us to accept your pull requests.

The following instructions are common for all Vaadin components. Replace vaadin-combo-box with any other component in the following examples. Check the component readmes for any special development notes.

Getting the code

  1. Clone the component project from GitHub:
  $ git clone
  1. Install Node. It comes bundled with npm, which is needed to install other tooling.

  2. Install Bower using npm:

  $ npm install -g bower

If you encounter permission issues when running npm see the article about fixing npm permissions on

  1. Use Bower to install the dependencies of the component:
  $ cd vaadin-combo-box
  $ bower install

Running demos

  1. Install Polymer CLI using npm:
  $ npm install -g polymer-cli
  1. Start a local server in the project root directory:
  $ cd vaadin-combo-box
  $ polymer serve --port 8080
  1. Open the following URLs in your browser:

Running tests

Install Web Component Tester using npm:

$ npm install -g web-component-tester

Tests can be run with the wct task from the component directory:

$ cd vaadin-combo-box
$ wct

You can also run and debug the tests manually:

$ cd vaadin-combo-box
$ polymer serve --port 8080

You should include new tests in your pull requests if you add features to the components or if you are fixing a bug.


We follow the same style guide as Polymer.

Contributor License Agreement

When you send a pull request to any of our repositories, you get an automated comment response about the CLA. It will notify you if you haven’t signed the CLA yet, and in that case instructions how to do it. You need to do this once per each repository. Before we can accept any of your code contributions, you need to sign the CLA.