Skinnable Web Components

LotusJS is a TypeScript framework for building modern web apps using web components with decoupled views.
The framework allows the entire component view to be encapsulated in an external HTML template, with no framework dependencies.
This view is known as a skin which can be assigned to a custom tag instance and loaded at runtime. Once loaded the
framework maps the view onto the component using the template's skin part declarations. This is a major advantage
over other frameworks such as Polymer as designers can develop complete component skins without ever touching the component code.
And because skins simply rely on a common data contract (the skin part definitions), developers can
design their unit tests and code using abstract HTML elements. This allows design and programming teams to run on separate
parallel tracks speeding up the design review process and development sprints. Best of all LotusJS is light weight and very easy to use.

Features

TypeScript source

npm package manager

ES6 modules

Component map for custom elements

Two way data binding

Sandboxed context

Component skins using HTML templates with no framework dependencies or code

No need to use selectors in your component code, ever

Develop using abstract HTML elements instead of conrete elements defined in the skin

Examples

Monetize

the LotusJS team is fast at work on a private npm registry and platform that will allow you to sell your components and skins.
Subscriptions will be managed by the Lotus platform allowing you to securely build
and sell your components and skins to users all over the world.