Jito is a JavaScript web component framework with Data Binding, Template Engine, Virtual DOM and routing.
You can experience single page application development with just a web browser.
Please save the following code as example.html
and try opening it in your web browser. A counter that counts up every time you click.
<!DOCTYPE html>
<meta charset="UTF-8">
<body></body>
<script type="module">
import { watch, mount } from 'https://cdn.jsdelivr.net/gh/ittedev/jito@1.5.0/jito.js'
let state = watch({
count: 0
})
let html = `
Counter: {| count |}
<button onclick="count++">Add</button>
`
mount(document.body, html, state)
</script>
Jito use ES Modules.
No installation is required to use Jito.
Just browse to a single jito.js
file from your web browser to start using Jito.
You can download the latest version of the jito.js
file from Releases.
<script type="module">
import { ... } from './jito.js'
...
</script>
From jsDelivr.
<script type="module">
import { ... } from 'https://cdn.jsdelivr.net/gh/ittedev/jito@1.5.0/jito.js'
...
</script>
Distributed for Deno on deno.land/x.
See the following It needs to be built for browsers at esbuild, etc.
import { ... } from 'https://deno.land/x/jito@1.5.0/mod.ts'
It is distributed via npm for Node.js.
For Node.js, installation is required with the following command.
npm i jito
See the following It needs to be built for browsers at esbuild, etc.
import { ... } from 'jito'
Jito consists of APIs categorized as data binding, virtual DOM, template engine, web component, and routing. APIs are mainly provided as functions.
To use the functions, import them from their respective files as follows.
API | File | Functions | Browser | Server |
---|---|---|---|---|
Data Binding | jito.js | watch, unwatch, reach, unreach, change, lock, unlock | ✓ | ✓ |
Virtual DOM | jito.js | load, patch | ✓ | |
Template Engine | jito.js | parse, evaluate, snip, pickup, assign | ✓ | ✓ |
Web Components | jito.js | compact, mount, define, elementize | ✓ | |
Routing | routing.js | walk | ✓ |