Took a quick look. So if I understand correctly, you 1) instantiate a component, which creates an object and then 2) use destructuring assignment to get e.g. the template, css, event listeners out of that object. Seems intuitive!
What is not intuitive to me is the template syntax. Why did you decide to move this far away from HTML?
In any case: good luck with the project!