Ember Table

August 2012 – December 2012

Ember Table is an Addepar Open Source project that allows interaction with very large tabular datasets by only rendering the necessary rows into the DOM that are visible. It is written as an Ember.js component with an API that is easy to understand and extend. Ember Table has become one of the most popular Ember.js open source components on Github.com.



I was responsible for the design, HTML, CSS, Ember templates, and parts of the Ember views.




I started this project with a fellow engineer when it was discovered that the SlickGrid table did not support full-bleed rows in our application, and would leave a gaping whitespace resulting in the user perceiving that something had failed to render. We also could not use a regular HTML table, because we had to be able to support tables with up to a million rows. As a solution, we needed to have lazy rendering, which allows the browser to render only the minimum number of rows (those actually shown), while dynamically updating the content in the rows as the user scrolls. I created the HTML/CSS prototype, and worked with a brilliant fellow engineer to turn it into an Ember project. We now use Ember Table in multiple parts of our web product, as well as for internal purposes.