Open jordanfinners opened 11 months ago
This would be a tremendous improvement over the status quo for those designing admin interfaces without React. My app uses Elixir and Phoenix LiveView, for instance, and as @jordanfinners mentioned, porting even a fraction of the options available for certain Polaris components is quite the chore.
Transitioning Polaris to Web Components will make Shopify app development more accessible, and here's why:
Web Components will remove the React requirement, which will therefore make it easier and faster to develop on Shopify's platform.
This would be great for Shopify, Shopify app developers, and merchants. If it's easier to build on Shopify, then there will be more solutions available in the App Store.
@zachallaun or @thosakwe - have either of you found/built a solution that has allowed you to in some way encapsulate shopify styling or components inside liveview components? absolutely doing my best to avoid having to write much react, to quickly and easily iterate on building some shopify apps. thanks!
Feature request summary
Currently there is great support for React in Polaris, however using the HTML only is less ideal.
This is a request to provide Web Component versions of the Polaris components π
Rationale
Shopifys Platform is the Web Platform and providing Web Components versions of the design system would extend support outside of the React ecosystem and be more interoperability with other frameworks and tooling.
Web Components are web standards, and to support the web platform, is to support Web Components. π
They also make the [perfect fit for design systems] (https://web.dev/articles/web-components-io-2019#design_systems).
Currently if you use the HTML version of the Polaris components creating complex applications is difficult due to the amount of nested divs. Supporting Web Components would aid better experience for application builders and therefore better experience for Shopify merchants. π
π Feature requests that are not yet planned will be closed. We then use the issueβs :+1: upvotes to track and set priorities. See the contribution guidelines for more information.