Easy to get started
- Load an mjs file, no build
- Create a class
- customElements.define
- Works with everything
Easy to do the right thing
- Runtime type safety
- Required properties
- Test without the DOM
Easy to solve hard problems
- Derived properties / FRP stuff
- Real-time
- Promises in templates
Best way to create web components to solve your UIs hardest problems
- Portable - can use in any app and with any framework
- Reactive - derived properties, FRP stuff, declarative templates
- CanJS and web components will outlive your UI
- Easy to share to gain contributions and publicity