custom-elements-everywhere
shoelace-css
custom-elements-everywhere | shoelace-css | |
---|---|---|
19 | 73 | |
1,135 | 12,030 | |
0.5% | 2.0% | |
8.9 | 9.5 | |
6 days ago | 10 days ago | |
JavaScript | TypeScript | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
custom-elements-everywhere
-
Unlocking the frontend – a call for standardizing component APIs pt.2
With React (it seems) finally moving to support everything needed (they are the last major framework lagging behind substantially), too, we might be moving to a world post-framework discussions, and real interoperability on a technical level. I think Jake Lazaroff motivates this beautifully with his articles “Web Components Eliminate JavaScript Framework Lock-in” and “The Web Component Success Story”.
-
Use web components for what they’re good at
Seems it doesn’t work in React, everything is sent as a string. There was a link in the article that shows how well web components work with various frameworks.
https://custom-elements-everywhere.com/
You can see how React fares for itself.
-
If Web Components are so great, why am I not using them?
React supports Web Components, just some quirks to be aware of: https://custom-elements-everywhere.com/
-
[AskJS] Asking advice on monorepo setup with multiple frameworks
You could wrap each component as a Web Component and then import them for each repo. Web Components are not native to frameworks, so the support for them could vary when passing props. Or you could wrap the render method of each framework as a function and then use the receiving frameworks life cycle method and inject it onto the page. If you use frameworks like Svelte or Lit that are "Web Component" based, then you'd need to see if the receiving framework supports Web Components inorder to import the seamlessly.
-
Am I the only one that thinks that the direction of React is wrong?
Check compatibility of React with web components: https://custom-elements-everywhere.com/ It's not directly because of jsx, but because of synthetic "let's make it up" approach of React.
-
Regarding converting svelte file into pure js file
I have been using this approach recently as well, working great thus far ! Some things to consider though: - I would recommend checking if the other frameworks you intend to use have good web components support (looking at you, react): https://custom-elements-everywhere.com/ - There are ways to do so without web components, but I wouldn't recommend them unless your framework has poor web components support.
-
HTML with Superpowers: An Introduction to Web Components
VueJS actually fails some advanced tests for WebComponents: https://custom-elements-everywhere.com/
So, VueJS docs are actually incorrect when they say it scores 100%. The actual score is 90%.
I had reported this 8 months ago.
-
Building Web Components 101 - Part 1
Since Web Components are supported natively by browsers, they can be used in any libraries and frameworks either directly or with configurations. https://custom-elements-everywhere.com/ is a great site to check custom elements support status by different libraries and frameworks.
- Check if a library/framework supports the usage of custom elements
- custom-elements-everywhere.com: Check if a library/framework supports the usage of custom elements
shoelace-css
-
Htmx and the Rule of Least Power
HTMX gets all the hype right now, but there are other tools in the same vain, my favorite being Unpoly (https://unpoly.com). Together with Shoelace (https://shoelace.style) you get nice GUIs real fast, without the burden of complicated dependency management and build steps. Also, you don't have to write a lot of JS, just what is needed for small enhancements, as it was meant to be. Some might say the main drawback is the tight coupling to your backend. In my case, this is also the main benefit as it integrates perfectly with the backend framework (Django).
-
Show HN: Hyperdiv – Reactive, immediate-mode web UI framework for Python
Hello HN,
I'm releasing Hyperdiv (https://hyperdiv.io), a framework for rapidly developing reactive browser UIs in Python, with immediate-mode syntax and using Shoelace (https://shoelace.style) as its built-in component system.
This short coding video will give you a good idea of what it is: https://www.youtube.com/watch?v=4XJKfxaqvGE
I wrote a brief article about the motivation and approach: https://hyperdiv.io/intro.html
Hyperdiv doesn't aim to compete with serious full-stack frameworks. The core aim was to make it easy and fast to prototype apps and build UI-based tools. I was originally motivated by internal tools at work -- feeling the need to quickly put together UI-based tools to share with both technical and non-technical coworkers, without having to stand up and maintain a full internal stack.
This is my first major open source release. I really appreciate your feedback and support. - Marius
-
Making Web Component properties behave closer to the platform
For example, all the following design systems can be used without tooling (some of them provide ready-to-use bundles, others can be used through import maps): Google's Material Web, Microsoft's Fluent UI, IBM's Carbon, Adobe's Spectrum, Nordhealth's Nord, Shoelace, etc.
- Shadcn: Beautifully designed components that you can copy-paste into your apps
- Shoelace: A forward-thinking library of web components
-
Stream Updates to Your Users with LiteCable for Ruby on Rails
Here's what this looks like - note that I'm using Shoelace components for styling purposes.
- Ask HN: Is there something like shadcn/UI for vanilla HTML and JavaScript?
-
Lit 3 Release Announcement
There are lots of open-source design systems built with Lit. Shoelace is a popular component set that you might check out: https://github.com/shoelace-style/shoelace There are many others...
Would it help if we listed more open source projects on our site?
Because of our focus on components and the fact that you really can use just about any libraries and scaffolding for apps, we don't really have an app starter kit, but it's something we've talked about.
-
Framework Interoperable Component Libraries Using Lit Web Components.
I'm really excited about all this, and it makes me have some faith in the web again. I think that Lit is a step in the right direction especially the ability to do SSR / SSG and hydrate a web page. Hopefully 🤞 Shoelace can get SSR running, which is currently one hurdle, but I think it is achievable.
What are some alternatives?
stencil - A toolchain for building scalable, enterprise-ready component systems on top of TypeScript and Web Component standards. Stencil components can be distributed natively to React, Angular, Vue, and traditional web developers from a single, framework-agnostic codebase.
carbon-components-svelte - Svelte implementation of the Carbon Design System
details-dialog-element - A modal dialog that's opened with <details>.
ng-bootstrap - Angular powered Bootstrap
hybrids - Extraordinary JavaScript UI framework with unique declarative and functional architecture
storybook - Storybook is a frontend workshop for building UI components and pages in isolation. Made for UI development, testing, and documentation.
feelback-integrations - Feelback SDKs, integrations libraries and samples
material - Material design for AngularJS
astro - The web framework for content-driven websites. ⭐️ Star to support our work!
web-vitals - Essential metrics for a healthy site.
spectrum-web-components - Spectrum Web Components