Fork me on GitHub

SLIM is your PRODUCTIVE way for building your own NATIVE web components

Slim embraces the MVVM pattern for rapid development of UI components

With es6 and slim you could write native web components double-time with no hassle of using external libraries that affect your workflow

Hello, slim.js

Data binding

Here's a demo web component.
Insinde you could find two text input with two ids: "in" and "out". Please type your name into "in"

Repeaters

Use any array as data-source for repeaters. Every item in the array will be injected as data property to each replica. Easy!

<span slim-repeat="dataSource" bind>[[data.name]]</span>

Assuming the source has name property in each item, you would expect an output similiar to this: Alpha Beta Gamma Delta Echo ...

Plugins

Extend Slim.JS capabilities by writing plugins. It's that easy

Slim.plugin('afterRender', (element) => {console.log("Gotcha after rendering, ", element)}

This is all possible thanks to slim.js, and look at the code - without effort!
slim.js is not a framework, it's a series of es6 classes and base-classes the are here for you to build your own native web components, without the sweat. No need to comply to a 3rd party library's conventions anymore. Fear not of performance issues, it's native, it's easy and it's light.

Get slim.js

bower install slim.js
npm install slim-js

Supported in