Work in dart and js, work in shadow dom, match example conventions
Match example convention