← Back


Data table with Polymer 3 support!




[ This description is mirrored from at on 2019-05-10 ]

Published on NPM Published on Vaadin  Directory Published on


News! New stable release 3.0.0

This package was updated to ES6 syntax and now support Polymer 3!

The new version 3.0.0 works only with Polymer 3.0 or above. If you want to use it with Polymer 2.* please use previous version 2.2.0.

You can find new example how to use it in the file example/your-datatable-implementation.js.


We greatly appreciated the work of David Mulder's paper-datatable but since it hasn't been active for a while and we at Blue Water Tracks really wanted to keep pushing the work done so far, we decided to inherit the project and let it evolve but combining the pull requests on the project along with a couple of fixes and features that we came up with. Since many people already use the paper-datatable component, we created this component to make sure that it is compatible with the paper-datatable component. You can easily use this element only changing the path to paper-datatable import element like below. We hope that David takes what we have done withbwt-datatable and merges it into the original paper-datatable.


<link rel="import" href="/bower_components/paper-datatable/paper-datatable.html">


<link rel="import" href="/bower_components/bwt-datatable/bwt-datatable.html">

If you already used selection toolbar in paper-datatable-card you need to add slot property to it like this:

<div slot="toolbar-select-single">
  <paper-icon-button icon="info" on-tap="info"></paper-icon-button>
<div slot="toolbar-select">
  <paper-icon-button icon="delete" on-tap="delete"></paper-icon-button>
  • Original paper-datatable documentation and demos can be found here
  • Our documentation and demos can be found here

datatable full implementation

New changes

  • Column header update dynamically according to paper-datatable pull request #78

  • Truly responsive; ability to use bwt-datatable on mobile devices by easily setting the responseWidth property to the desired breakpoint resolution.

      <paper-datatable data="{{data}}" selectable multi-selection response-width="767px">
         <paper-datatable-column header="Title" property="title" sortable editable>

bwt-datatable mobile view

  • Table and/or column header can be fixed to the top of the page for better usability when you have very big amount of data in table. More info can be found here

bwt-datatable fixed header

We also tried to add additional functionality and fix some of the bugs in paper-datatable and also merge the following pull requests for paper-datatable

  • Fix issue with null values inside paper-column pull request #113
  • Change es6 to es5 code to support some of the older browsers request #51 and request #106 (Hopefully when Polymer 2 ships with transpiling, we can rewrite the code into proper ES6 code)
  • Use textContent instead of innerHTML inside elements request #108


The element can be installed using bower using

bower install --save bwt-datatable

Important: If you wish to use <bwt-datatable-card> you need the paper elements listed in devDependencies as well. They are not listed as normal dependencies to prevent them from being pulled in on production if you do not need them.


Check out the getting started guide.


@bhargavkonkathi Programming is like playing chess; each line is as important as each step to determine what kind of player or programmer you are. When ever not playing chess, it's Javascript, Java and mongodb.
@maisnamraju Javascript Ninja; saving the world with one line of javascript at a time. ;)
@dhrytsenko What is my opinion about JavaScript, NodeJS, MongoDB and Polymer? Building blocks to the future! Allowing me to help make the world a better place.

Pull Requests are welcome

If you feel that you have something that could improve the component, please feel free to send a PR or create an issue with an explaination.


This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 of the License as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

This project uses a fair share license construction, if you wish to use this project commercially you will likely want to continue reading here. If you wish to donate please contact me personally.


(Loading compatibility data...)

Was this helpful? Need more help?
Leave a comment or a question below. You can also join the chat on Discord or ask questions on StackOverflow.



  • polymer#Polymer/polymer#^2.0.0
  • paper-material#^2.0.0
  • paper-item#^2.0.0
  • paper-icon-button#^2.0.1
  • paper-checkbox#^2.0.1
  • paper-tooltip#^2.0.1
  • paper-styles#^2.0.0
  • whenever.js#~0.0.1
  • iron-form#^2.0.1
  • iron-media-query#^2.0.0
  • iron-scroll-target-behavior#^2.0.0
  • paper-listbox#^2.0.0
  • paper-dropdown-menu#^2.0.0
  • paper-progress#^2.0.1


Polymer 2.0+
Polymer 1.0+ in 1.0.12
Browser Independent