All Projects → slimjs → Slim.js

slimjs / Slim.js

Licence: mit
Fast & Robust Front-End Micro-framework based on modern standards

Programming Languages

javascript
184084 projects - #8 most used programming language
es6
455 projects

Projects that are alternatives of or similar to Slim.js

Bunny
BunnyJS - Lightweight native (vanilla) JavaScript (JS) and ECMAScript 6 (ES6) browser library, package of small stand-alone components without dependencies: FormData, upload, image preview, HTML5 validation, Autocomplete, Dropdown, Calendar, Datepicker, Ajax, Datatable, Pagination, URL, Template engine, Element positioning, smooth scrolling, routing, inversion of control and more. Simple syntax and architecture. Next generation jQuery and front-end framework. Documentation and examples available.
Stars: ✭ 473 (-40.05%)
Mutual labels:  framework, library, dom
Roadmap Web Developer 2017
Front-end (HTML5/CSS3/Javascript related) technologies to learn in 2017
Stars: ✭ 142 (-82%)
Mutual labels:  html5, front-end, front-end-development
Easy Dom
EASYDOM-可能是最适合你的 DOM 课程
Stars: ✭ 21 (-97.34%)
Mutual labels:  dom, front-end, front-end-development
Binding.scala
Reactive data-binding for Scala
Stars: ✭ 1,539 (+95.06%)
Mutual labels:  data-binding, dom, front-end
Cdnjs
🤖 CDN assets - The #1 free and open source CDN built to make life easier for developers.
Stars: ✭ 9,270 (+1074.9%)
Mutual labels:  framework, library, front-end
Front End Web Development Resources
This repository contains content which will be helpful in your journey as a front-end Web Developer
Stars: ✭ 3,452 (+337.52%)
Mutual labels:  framework, front-end, front-end-development
Fast
Develop, build, deploy, redeploy, and teardown frontend projects fast.
Stars: ✭ 126 (-84.03%)
Mutual labels:  html5, front-end, front-end-development
Crab
JavaScript library for building user interfaces with Custom Elements, Shadow DOM and React like API
Stars: ✭ 22 (-97.21%)
Mutual labels:  library, webcomponents, dom
Lwc
⚡️ LWC - A Blazing Fast, Enterprise-Grade Web Components Foundation
Stars: ✭ 974 (+23.45%)
Mutual labels:  framework, library, webcomponents
Fos
Web Components to turn your web app into a fake operating system
Stars: ✭ 151 (-80.86%)
Mutual labels:  framework, library, html5
Displayjs
A simple JavaScript framework for building ambitious UIs 😊
Stars: ✭ 590 (-25.22%)
Mutual labels:  framework, dom, front-end
Almin
Client-side DDD/CQRS for JavaScript.
Stars: ✭ 477 (-39.54%)
Mutual labels:  framework, library
Snapchat Clone
👻 A SnapChat clone built with React, Redux and Typescript. Styled with SASS. Tested with Cypress, Jest and Enzyme. Linted with Eslint and formatted with Prettier!
Stars: ✭ 770 (-2.41%)
Mutual labels:  front-end, front-end-development
Lgame
A cross-platform Java game Engine (Framework) , support JavaFX / Android / IOS / HTML5 / Linux / MAC / Windows
Stars: ✭ 467 (-40.81%)
Mutual labels:  framework, html5
Mvikotlin
Extendable MVI framework for Kotlin Multiplatform with powerful debugging tools (logging and time travel)
Stars: ✭ 483 (-38.78%)
Mutual labels:  framework, native
Html5 Dom Document Php
A better HTML5 parser for PHP.
Stars: ✭ 477 (-39.54%)
Mutual labels:  html5, dom
Vital.vim
A comprehensive Vim utility functions for Vim plugins
Stars: ✭ 504 (-36.12%)
Mutual labels:  framework, library
Vuesax
New Framework Components for Vue.js 2
Stars: ✭ 5,293 (+570.85%)
Mutual labels:  framework, library
Porter
💄 Scalable and durable all-purpose data import library for publishing APIs and SDKs.
Stars: ✭ 547 (-30.67%)
Mutual labels:  framework, library
Front End Handbook 2018
2018 edition of our front-end development handbook
Stars: ✭ 4,172 (+428.77%)
Mutual labels:  front-end, front-end-development

hello, slim.js

Build Status

Chat on gitter

Hello, slim.js

Declarative Web Components

Slim is an ultra fast, native and elegant library for Web Components development

Slim.js is a lightning fast library for development of native Web Components and Custom Elements based on modern standards. No black magic involved, no useless dependencies.

It uses ES6+DOM native API to boosts up HTML elements with superpowers.

It is extensible: You can add your own directives (HTML-compilant) for DOM manipulation.

It is pluggable: You can add plugins that are activated during different hooks in component's lifecycle.

Is this another framework?

Nope. It's a very thin code layer (~3k) that adds framework-like power to your custom elements, using only the browser's native capabilities — as defined by W3C standards.

Here's what you get:

  • Automatic rendering using templates.
  • One-way data binding, derived from templates. No need to declare which properties are what.
  • It can be extended: anyone can add custom plugins or directives.
  • It feels like a framework (in a good way), but without the limits of a classic framework. It works everywhere, you pick your own framework.
  • It's as small as 3.4 KBytes (gzipped) and the built-in directives are OPTIONAL!
  • Single file for core functionality, and you're good to go.
  • No dependencies, everything is based on native browsers' API. Choose your own tools.
  • (Optional) Decorators for ES7/Next syntax, via Babel included.
  • Works with mixins from other component libraries, such as Polymer, out of the box.

Standards-compliant

  • ES6
  • Web Components V1
  • No transpiling or compilation required

No Setup required. It just works.

  • Add Slim.js to your project and you're good to go!

Documentation

The official website is built with Slim.js (with source maps). Check out the source code, see it for yourself.

Version 4+ Changes and Migration

  • Package files supports ES6 native modules - i.e. import / exports.
  • For no-modules approach, every file has a filename.nomodule.js
  • Directives are in separate files, to reduce core package size. For using directives:
import 'slim-js/directives/repeat.js'
import 'slim-js/directives/if.js'
import 'slim-js/directives/switch-case.js'
// Or if you need them all
import 'slim-js/directives/all.js'
  • For the no-module approach place in your HTML:
<script src="slim-js/Slim.nomodule.js"></script>
<script src="slim-js/directives/all.nomodule.js"></script>

or alternatively use the ES6 native modules in your browser:

<script type="module" src="slim-js/Slim.js"></script>
<script type="module" src="slim-js/directives/..."></script>

Contibutors are welcome.

USE THE PLATFORM

Do you want to be a supporter? Contact [email protected].

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].