In the last decade, we used React and React-like frameworks because Web Standards weren't there yet, and some of us wanted to write type-safe components. But Web Components are mature now, and if we combine that with JSX/TSX for type-safety we have everything we want while staying close to Web Standards.
webjsx fully supports JSX syntax, allowing you to create virtual DOM elements using createElement and update the real DOM with applyDiff.
webjsx excels at integrating JSX with Web Components, allowing you to define custom elements and render them using JSX syntax.
TypeScript will complain that your Custom Element (such as <counter-element>) is not found. That's because it is only aware of standard HTML elements and doesn't know what <counter-element> is.
Contributions are welcome! Whether it's reporting bugs, suggesting features, or submitting pull requests, your help is appreciated. Please ensure that your contributions adhere to the project's coding standards and include appropriate tests.