Git Product home page Git Product logo

lit-list's Introduction

Web Components & Lit Library - a Curated List of documentation

A curated list of great documentation to get frontenders started with Web Components & Lit, with or without a framework.

Web Components basics

Basically, Web Components consist of three technologies: Custom elements, Shadow DOM, and HTML templates.- Web Components | MDN
Simply the best source of truth about all Web Technology

In-Depth Web Components

Rob Eisenberg

Rob Eisenberg is a respected voice in the Web Components community. He has worked on Angular at Google, on FAST at Microsoft, and is a member of the W3C Web Componnents Community Group.

  1. About Web Components
  2. Debunking Web Component Myths and Misconceptions
  3. 2023 State of Web Components
  4. Web Component Engineering Course

Relevant Web Standards

Web Components are an umbrella term. These are the underlying technologies you need to know to make the best of Web Components & Lit.

Google's Lit Library

A really high level view of Lit would be that it's simply filling in the Gaps in the standards.

Lit is a tiny (<5Kb) library written by Justin Fagnani of Google, which was developed to fill a few gaps and make working with Web Components as easy as working with React UI, but without the need for expensive indirections like Virtual DOM and JSX.> A Lit component renders its template initially when it's added to the DOM on a page. After the initial render, any change to the component's reactive properties triggers an update cycle, re-rendering the component.

Lit batches updates to maximize performance and efficiency. Setting multiple properties at once triggers only one update, performed asynchronously at microtask timing. During an update, only the parts of the DOM that change are re-rendered. Although Lit templates look like string interpolation, Lit parses and creates static HTML once, and then only updates changed values in expressions after that, making updates very efficient. - from https://lit.dev/docs/components/rendering

See Lit for React Developers | Google Codelabs- Lit (Simple. Fast. Web Components)
Lit Homepage

Component Libraries & Design Systems

Design System Tools- Custom Element Manifest

Web Components Component Libraries

Ready-to-use UI component libraries to use in any project.

Web Component Design Systems / Discovery

Web Components Only Approach (not using a framework)

When you decide not to use any existing framework, you have to decide what to use for a few common areas normally taken care of by the framework, such as state management and routing.

General Web Capabilities

State Management

State Management is one of the strongest reasons people keep referring to frameworks, but if you look at what people then use, it's a lot of Redux and other libraries, which are combined with their favorite frameworks, sometimes even packaged, but libraries they are.The same libraries and approaches can be combined with Web Components and Lit!- Using Redux in a LitElement app | Vaadin

Routing

When not using a framework, routing is not provided as a ready-to-use component. Using browser-native functionality isn't complex (using History), and lately, the new URLPattern API allows you to do any kind of routing, including complex parameter passing, natively. The Lit PWA (see my previously mentioned article) uses it, including lazy-loading polyfills if needed.- URLPattern brings routing to the web platform - Chrome DevelopersOther router solutions:- Polymer/pwa-helpers: Small helper methods or mixins to help you build web apps. (github.com)

Using Web Components in Frameworks

When you do decide to work with your favorite framework, Web Components can still be a valid choice for everything UI, because you will be able to reuse the components across projects with differing frameworks, and they will work regardless of framework upgrades or switching to other frameworks. This is why many companies, such as Google, Adobe, RedHat, Microsoft, Cisco, SAP and VMWare are already investing heavily in Web Components.

Generic information on Web Components in frameworks:

React

Angular

Vue


This list is maintained by Marc van Neerven

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.