Awesome lit-html
A curated list of awesome lit-html resources.
lit-html — an efficient, expressive, extensible HTML templating library for JavaScript.
Contents
- General resources
- Community
- Implementations
- Components
- Starter Templates
- IDE Plugins
- Tools
- Tutorials
- Videos
- Podcasts
- Blogs
- Inspired Solutions
- Other awesome resources
General resources
Community
- lit-html Twitter
- #lit-html - Channel in Polymer Slack
Implementations
Sorted by creation date (oldest first).
- lit-element - Simple base class for creating fast, lightweight Web Components.
- @gluon/gluon - Lightweight library for building Web Components and applications.
- lit-any - Partials library, which uses lit-html to compose views and forms from smaller templates.
- lit-html-element - Base class for creating Web Components using lit-html.
- fit-html - Combination of lit-html, Web Components and Redux.
- lit-html-brackets - A lit-html extension that uses a bracket syntax similar to Angular's template syntax.
- @littleq/element-lite - A take on using lit-html and Polymer's property mixin.
- @popeindustries/lit-html-server - Render lit-html templates on the server as Node.js streams.
- ullr - Building Web Components with Functional Programming Using lit-html.
Renderers
The following libraries allow using lit-html as a renderer, while also providing alternatives such as HyperHTML or JSX.
- @moleculejs/molecule-lit - lit-html based renderer for Molecule.
- @skatejs/element-lit-html - lit-html based renderer for SkateJS.
- icomponent-lit - lit-html based renderer for icomponent.
LitElement Extensions
These are not implementations of lit-html itself but rather community extensions of the official LitElement base class.
- @dabolus/localized-lit-element - LitElement extension that provides easy l10n out of the box.
- @apollo-elements/lit-apollo - LitElement integrations with Apollo GraphQL.
- @morbidick/lit-element-notify - Small mixin for LitElement to get easy change events via the properties getter.
- styled-lit-element - Provides the lit-css integration with LitElement base class.
Components
- Material Web Components - Material Design implemented as Web Components.
- Wired Elements - Collection of elements that appear hand drawn.
Starter Templates
- PWA Starter Kit - Starter template by the Polymer team.
- Create-lit-app - Create lit-html apps with no build configuration.
IDE Plugins
- VSCode lit-html plugin - Syntax highlighting and IntelliSense for lit-html template strings.
- es6-string-html - Another VSCode extension which adds syntax highlighting support for HTML in ES6 multiline strings.
- vim-html-template-literals - Syntax highlighting and indentation for lit-html.
- TypeScript lit-html Plugin - TypeScript server plugin that adds IntelliSense for lit-html template strings.
Tools
- babel-plugin-template-html-minifier - Babel plugin for minifying HTML in tagged template strings.
- eslint-plugin-lit - ESLint plugin for lit-html template strings.
- rollup-plugin-minify-html-literals - Rollup plugin to minify HTML in tagged template strings.
- lit-loader - LitElement Single File Component loader for Webpack.
- generator-lit-element - Yeoman generator for creating LitElement based Custom Elements.
- Nutmeg - CLI tool to build, test, and publish vanilla Web Components with a little spice.
- open-wc - Set of recommendations to help you generate, test, lint, demo, and publish Web Components.
Tutorials
Videos
- Efficient, Expressive, and Extensible HTML Templates (Polymer Summit 2017)
- lit-HTML (Chrome Dev Summit 2017)
- VDOM vs lit-html - HTTP203
Podcasts
- The Web Platform Podcast 159: lit-html - HTML Templates via JavaScript Template Literals - An episode with the lit-html creator Justin Fagnani.
Blogs
- A bit about lit-html rendering
- Building a chat with Twilio, lit-html, Parcel and TypeScript
- Making a fullstack CRUD app with LitHTML, Redux, Express, and Webpack
- The future of Polymer & lit-html
- A night experimenting with Lit-HTML
- LitElement To Do App
- A new, lean way of creating web apps
- LitElement with Rollup, Babel & Karma
- A Quick Note on Lit Types & Properties
- Let's Build Web Components! Part 5: LitElement
Inspired Solutions
These libraries do not depend on lit-html, but are inspired by some of its concepts. They use html
and css
tagged
template literals, and leverage the benefits of the same or similar IDE Plugins for syntax highlighting.
- hybrids - UI library for creating Web Components with simple and functional API.
- lit-ntml - Lightweight and modern templating for SSR in Node.js, inspired by lit-html.
- htm - Hyperscript Tagged Markup: JSX alternative using standard tagged templates, with compiler support.
- lite-html - A modern replacement for VirtualDOM rendering engines.
- lit-css - A tool to distribute styles via ES modules.
Other awesome resources
If you want more awesome resources, check the awesome list!