Sonar helps you commit clean code every time. With over 300 unique rules to find JavaScript bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work. Learn more →
Top 23 TypeScript web-component Projects
-
storybook
Storybook is a frontend workshop for building UI components and pages in isolation. Made for UI development, testing, and documentation.
Website: https://storybook.js.org/
-
wired-elements
Collection of custom elements that appear hand drawn. Great for wireframes or a fun look.
-
Appwrite
Appwrite - The Open Source Firebase alternative introduces iOS support . Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!
-
fast- (Fast components from Microsoft8)
-
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.
-
vime
Customizable, extensible, accessible and framework agnostic media player. Modern alternative to Video.js and Plyr. Supports HTML5, HLS, Dash, YouTube, Vimeo, Dailymotion...
Vime is a simple React framework that provides a flexible, expandable media player that can be used with a variety of Javascript frameworks like React, Vue, Angular, and Svelte. This project will utilize a sample clip from the Vime documentation.
-
happy-dom
Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. It includes many web standards from WHATWG DOM and HTML.
Project mention: A question on testing a <select> element with Vitest / vue-test-utils | reddit.com/r/vuejs | 2023-01-16https://github.com/capricorn86/happy-dom/issues/618. Looks like some work was merged recently.
-
ninja-keys
Keyboard shortcuts interface for your website. Working with static HTML, Vanilla JS, Vue, React, Svelte.
Don't forget to check out the Ninja-key documentation to learn more about the customization options.
-
Sonar
Write Clean JavaScript Code. Always.. Sonar helps you commit clean code every time. With over 300 unique rules to find JavaScript bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.
-
ui5-webcomponents
UI5 Web Components - the enterprise-flavored sugar on top of native APIs! Build SAP Fiori user interfaces with the technology of your choice.
With the node adapter, I'm able to build successfully but when I do npm run preview It breaks, because I'm using a web components library UI5 web components and for some reason, I get this error:
-
-
Project mention: todolist-cl: a nice looking todolist with a web UI, written in Common Lisp [and by a newcomer to CL, to add credit] | reddit.com/r/Common_Lisp | 2022-11-30
I recently integrated Stylo: https://stylojs.com/ It was simple and the editor looks simple, I like it.
-
Project mention: Minze – JavaScript framework for native web components | news.ycombinator.com | 2022-12-31
-
Project mention: Property of element returns undefined but the value exists | reddit.com/r/webdev | 2022-12-22
OP made another comment on the thread (which I think he may have deleted) which made it clear he was trying to create an instance of this web component - https://github.com/cifkao/html-midi-player - and interact with it's API (get and set config).
-
ui5-webcomponents-react
A wrapper implementation for React of the UI5 Web Components that are compliant with the SAP Fiori User Experience
Project mention: Open source web component recommendation to use inside React app? | reddit.com/r/reactjs | 2023-03-11 -
-
Project mention: How to handle cors for incoming request in sveltekit? | reddit.com/r/sveltejs | 2022-04-18
Have you tried using the official component library by giscus for svelte?
-
take a look at this starter project from IBM for an entire site pwa that is seo friendly and built with Lit. I've used this as a guide on a few projects and it has been great. Also take a look at this component library that is framework agnostic and built with web components.
-
crayons
🖍️ Crayons - A UI Kit comprising of web components for building Freshworks Apps! (by freshworks)
The main reason you would want to pick such a proprietary library is to achieve a homogeneous look and feel (often behavioral UX as well) when your app must work within another product - this product/organization is usually the one that also provides the library in question, and more often than not, uses the same design system if not the library itself.
We built https://github.com/freshworks/crayons for the same reason - apps published to the Freshworks Marketplace can be built using Crayons. We also ended up building our own user facing SaaS applications using Crayons.
-
-
-
component-elements
Create a custom element from any component with these tiny functions (2KB GZipped, ~1KB Brotli). Preact and React currently supported
-
There are more info at https://cwco.io/
-
-
Project mention: Introducing a2k - A UI library designed to capture that retro 2000s feeling | dev.to | 2022-12-01
a2k is still a work in progress, so any feedback is welcome. If you run into any problems while following the set-up guides, please open a GitHub issue.
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
TypeScript web-components related posts
- Need some help on build process.
- Simplest Way to Create Web Component
- Adding cmd-k for Quick Navigation
- Simplest Way to Create Web Component
- Why web components are not popular?
- Lit - a simple library for building fast, lightweight web components. At Lit's core is a boilerplate-killing component base class that provides reactive state, scoped styles, and a declarative template system that's tiny, fast and expressive
- Web Component Intellisense for Available Slots and Attributes? (VS Code?)
-
A note from our sponsor - Sonar
www.sonarsource.com | 27 Mar 2023
Index
What are some of the best open-source web-component projects in TypeScript? This list will help you:
Project | Stars | |
---|---|---|
1 | storybook | 77,628 |
2 | wired-elements | 9,329 |
3 | fast | 8,111 |
4 | haunted | 2,485 |
5 | vime | 2,460 |
6 | happy-dom | 1,800 |
7 | ninja-keys | 1,366 |
8 | ui5-webcomponents | 1,279 |
9 | lume | 965 |
10 | stylo | 695 |
11 | minze | 507 |
12 | html-midi-player | 383 |
13 | ui5-webcomponents-react | 354 |
14 | image-crop-element | 164 |
15 | giscus-component | 164 |
16 | pwa-lit-template | 160 |
17 | crayons | 134 |
18 | file-attachment-element | 99 |
19 | web-component-designer | 76 |
20 | component-elements | 74 |
21 | cwco | 55 |
22 | vue-custom-element-example | 45 |
23 | a2k | 41 |