Atoms.js provide way of customizing appearance of controls (UI Elements) by decorating an element as template by applying atom-template attribute on the element. Controls contain many types of templates and you can override default look and feel by simply declaring new templates.
Following example displays usage of templates in various ways to change look and feel of AtomListBox completely, first one displays as simple list. Second displays as colorized boxes. And third one displays same list as a DataGrid. The best part of templating is, you can use AtomListBox and customize it to look like DataGrid without writing anymore scripts.