-
Notifications
You must be signed in to change notification settings - Fork 1
Web Components support #121
Comments
Looks promising. I do wonder if data binding interop could be made possible. |
Thank you @jeoffw for raising a question! Updated Q&A for this with a code example. |
This is great 🎉 definitely agree that we want to stick as close to the standards as reasonable. Things like
In my experience the tooling benefits and refactoring guarantees are worth it, and since it's a superset of JavaScript the changeover is primarily just swapping out the compiler. It's been a great success in carbon-charts for a complex non-Angular example. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
Generally speaking, how much "buy-in" does Web Components currently have from IBM and the Carbon team? Has this been discussed for a while or is it a relatively new proposal? What would it take for Web Components to gain traction? I'm very interested in seeing Carbon provide first-class support for Web Components, as I expressed in carbon-design-system/carbon#2833. Very happy to see the Angular team already discussing this! In regards to "best practices", these resources could be helpful to align the development and avoid common mistakes: |
@anthumchris Great to see that you jumped in this thread! Wrt Web Components discussion, it's been around at least for a few years, but in early days I saw that focusing on Web Components wouldn't be a sensible decision given the key specs were I personally saw the video (2nd link) at the time it was uploaded, and it definitely was a good one! The first link looks good, too, and I'm trying to add some key ones to the coding standard documentation. As I mentioned in another thread, great to have more discussions/contributions! I see this is the best way for this effort to get tranctions. Also, don't forget to talk to your buddies and let them add 👍 to the issue description above! |
Why not Stenciljs can be used?
Further, since Stencil generates standards-compliant web components, they can work with many popular frameworks right out of the box. |
@pulakb Great question! We have had some conversations with people wrt Stencil. Given we are seeking for a possibility of Web Components serving the basis of multiple framework variants, we set "bare metal", "web standard alignment even in library choice" and "no DSL" goals described above. Stencil unfortunately seems to go against those goals. It only affects |
These are some goals and ideas that could immediately help our teams, which consist of roughly 30 front-end and QA engineers spread across 3 countries & time zones. We'd like to reduce bugs and increase overall quality, consistency, and velocity:
|
Thanks @anthumchris for sharing your priorities! The notion of thin library stack (avoiding library/framework bloat) 💯 aligns one of the goals in |
This is really great! I would like to share a couple of references from @web-padawan (from @vaadin): And open-wc project: |
Thank you for sharing the links @abdonrd! Following the link finds more nice resources like https://github.com/web-padawan/awesome-lit-html, which is great! |
This is quite interesting too https://open-wc.org |
This list of frameworks that support custom elements might be of use as you continue to explore: https://custom-elements-everywhere.com/. Additionally, I would add that lighterhtml would be a good option as an alternative to lit-html. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
Cannot remove |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
As there's been no activity since this issue was marked as stale, we are auto-closing it. |
👀 |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
BTW, interesting link: |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
We've marked this issue as stale because there hasn't been any activity for a couple of weeks. If there's no further activity on this issue in the next three days then we'll close it. Thanks for your contributions. |
Closing as complete. |
@asudoh - Need to update your link from carbon-custom-components to carbon-web-components. |
@gearsandcode Updated the link - Thank you for pointing it out! |
Motivations
Suggestion of timeline and go-to-market strategy
Architecture
lit-html
Q&A
<button>
as a native button. React/Angular/Vue uses it with no problem. Web Components lets us create Carbon button as<bx-btn>
which works the same manner as native<button>
, which means React/Angular/Vue can use<bx-btn>
with no problem. Here's a React example with data binding:Iteration plans
Please refer to:
https://github.com/carbon-design-system/carbon-custom-elements#iteration-plans
https://github.com/carbon-design-system/carbon-custom-elements/tree/master/plans
The text was updated successfully, but these errors were encountered: