haunted
stencil
Our great sponsors
haunted | stencil | |
---|---|---|
5 | 55 | |
2,576 | 12,292 | |
- | 0.8% | |
0.0 | 9.9 | |
12 months ago | 6 days ago | |
TypeScript | TypeScript | |
BSD 2-clause "Simplified" License | GNU General Public License v3.0 or later |
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.
haunted
-
The benefits of Web Component Libraries
Web component browser APIs aren't that many, and not that hard to grasp (if you don't know about them, have a look at Google's Learn HTML section and MDN's Web Components guide); but creating a web component actually requires taking care of many small things. This is where web component libraries come in very handy, freeing us of having to think about some of those things by taking care of them for us. Most of the things I'll mention here are handled one way of another by other libraries (GitHub's Catalyst, Haunted, Hybrids, Salesforce's LWC, Slim.JS, Ionic's Stencil) but I'll focus on Google's Lit and Microsoft's FAST here as they probably are the most used web component libraries out there (ok, I lied, Lit definitely is, FAST not that much, far behind Lit and Stencil; but Lit and FAST have many things in common, starting with the fact that they are just native web components, contrary to Stencil that compiles to a web component). Both Lit and FAST leverage TypeScript decorators to simplify the code even further so I'll use that in examples, even though they can also be used in pure JS (decorators are coming to JS soon BTW). I'll also leave the most apparent yet most complex aspect for the end.
-
2021 Week 33, Hungry Ghost edition. Ghost-themed OSS and optical illusion.
Haunted on GitHub: github.com/matthewp/haunted
-
The Next Evolution of GraphQL Front Ends
Atomico and Haunted, to add the useController hook which underlies useQuery and co.
-
Why LitElement isn't as good as React
** WCs don't have to be classes. See matthewp/haunted which uses hooks like React. But that library is not a mixin or wrapper around lit-element; it would replace lit-element. It does use lit-html though.
-
Sushi Element: an expressive way to create web components
I think the distaste many folks have for web components stems from a simple misunderstanding. The APIs collectively know as "web components" weren't intended to replace your favorite framework. As with most things that become part of the standard, these are lower level APIs that will be supported for a long, long time. They were given to us with the hope that we'd build great tools around them, which we have with Stencil, lit-element, hybrids, Haunted, and so many more.
stencil
- Ajout de l'auto-complétion sur les Web Components avec Stencil
-
Making Web Component properties behave closer to the platform
First a disclosure: I never actually used Stencil, only played with it a bit locally in a hello-world project while writing this post.
-
Plasmic.app – the visual builder for your tech stack
This is my main concern too.
I don't understand why tools like this "pick a winner" with a specific framework instead of rendering to Web Components with a framework wrapper, or using something like Stencil[1] that can render to any framework.
[1] https://stenciljs.com/
-
Design Systems with Web Components
I was recently able to sit down with some of the core members of Ionic, who also created Stencil a toolchain for building Design Systems and Progressive Web Apps. We talked at great length how typically companies are approaching Ionic from a Design Team and need help building components. As a developer I wanted to talk about the Web Components that are used within the Design System first. There was a decent amount of surprise, so I thought I would break down what a Design System is and why it doesn't matter which end you start with, as long as you have both your Design and Development teams working together to build your Design System.
- Nue: A React/Vue/Vite/Astro Alternative
-
If Web Components are so great, why am I not using them?
Examples like this bug me. The React example is using a high level abstraction, the web component is directly using the API. A more accurate example would show how those React calls eventually boil down to document.createElement()
I don’t think the Web Components API was meant to be used directly all the time. You can use a framework like StencilJS:
https://stenciljs.com/
- Use Stencil / the ionic framework with emberjs [video]
-
World Wide Web Wars
You might say that this is the same vicious cycle as JavaScript frameworks. That's wrong, because Web Components are interoperable by design. Choosing Stencil or Lit or any other library is a development convenience that has little to do with the interoperability of the resulting components.
-
React Component in vue/angular
Not sure about Vue but you can in Angular, though my experience with React components in Angular has not been pleasant. Libraries such as Stencil allow you to create native Web Componets from React components.
-
Is there a plugin that abstracts registering web components with React?
I guess my problem is more specific to my overall architecture. I have components that when are placed in the DOM, have props rendered on them by their parent elements. I'm using stencil to do this.
What are some alternatives?
hooks - A high-quality & reliable React Hooks library.
lit - Lit is a simple library for building fast, lightweight web components.
shoelace-css - A collection of professionally designed, every day UI components built on Web standards. SHOELACE IS BECOMING WEB AWESOME. WE ARE LIVE ON KICKSTARTER! 👇👇👇
Svelte - Cybernetically enhanced web apps
lit-analyzer - Monorepository for tools that analyze lit-html templates
vite-ssg - Static site generation for Vue 3 on Vite
graphql-typed-document-node - An improved version of `DocumentNode` for seamless TypeScript integration for GraphQL.
css-modules - Documentation about css-modules
hybrids - Extraordinary JavaScript UI framework with unique declarative and functional architecture
catalyst - Catalyst is a set of patterns and techniques for developing components within a complex application.
rocket - The modern web setup for static sites with a sprinkle of JavaScript