Skip to content

fehmi/simply.js

Repository files navigation

About

What is simply.js

Simply.js is a web-component library for developing user interfaces. It is created by a designer to make it easy to develop atomic design system components and compositions of design systems. It uses native Custom Elements API of the Web Components standard and provides a single file component concept which helps to write HTML, CSS and JavaScript codes in one encapsulated single file per component.

It has a built-in super-fast declarative template engine that coded from scratch. Some parts of simply.js are respectfully forked from other beautiful projects. For example;morphdom for DOM diffing/patching, Observable Slim for reactive variables and AWC for router.

Long story short, simply.js is the name of the brand new template engine and the bridge between the adopted tools.

How it works

You will need to have basic understanding with HTML, CSS and JavaScript to develop with simply.js. They are relatively easy to learn languages when you think Super Mario was hand-written with 6502 assembly 40 years ago by Toshihiko Nakago. So, don't worry about to jump in to learn them. W3Schools is a great stating point. You don't have to learn every details. The big part of programming is to know how to search things on Google and ChatGPT nowadays :)

While you are working with simply.js, everything will run in the browser of the user. So, no compiler, no bundler, no builder and no config files needed. Just good old plain HTML, CSS, vanilla JavaScript and your favourite text editor. That's all!

Features

  • Lighting fast template engine
  • Reactive DOM
  • Single file components
  • Inline components
  • State management
  • Tailwind support
  • Electron support
  • Router
  • Zero dependency
  • No compiler, bundler or builder
  • Lightweight (20 KB gzipped)
  • Edge, Chrome, Firefox, Safari, Opera

Playground

The REPL of simply.js is at the Playground section. This is the fastest way to get started using simply.js. It opens with a "hello world" application and you can freely edit the app anyhow you want. Then you can download the app to continue developing on your local machine.


Made with ❤️ in Istanbul