Package Exports
- relementjs
- relementjs/astro
- relementjs/browser
- relementjs/html
- relementjs/isomorphic
- relementjs/mathml
- relementjs/package.json
- relementjs/server
- relementjs/svg
Readme
relementjs (Reactive Element)
Isomorphic reactive uis for the browser & server. The smallest reactive UI library on the browser & server. Tiny tree-shakable modules originally forked from VanJS.
relementjs scales large & small with tree-shakable modules & no-fluff implementation. relementjs includes rmemo as a reactive core & ctx-core for contexts...
| use case | size | imports |
|---|---|---|
| browser-only minimal | 741 B | tags |
| browser-only hydrate + helpers | 799 B | tags hydrate _ bind_ |
| browser-only hydrate + helpers + rmemo | 813 B | tags hydrate _ bind_ memo_ sig_ |
| server-only minimal | 498 B | tags |
| server-only render doc + helpers | 542 B | tags doc_html_ tagsNS _ bind_ |
| server-only render doc + helpers + rmemo | 864 B | tags doc_html_ tagsNS _ bind_ memo_ sig_ |
| isomorphic browser (base api) | 908 B | relement__use browser__base__relement |
| isomorphic server (base api) | 672 B | relement__use server__base__relement |
| isomorphic html tag | 34 B | html_ |
Note that the bold use cases are roughly equivalent to what VanJS provides. The browser-only library is smaller than vanjs & the server-only library is smaller than mini-van-plate/van-plate. mini-van-plate & mini-van-plate/van-plate does not provide server-side reactivity.
isomorphic rendering
import { relement__use } from 'relementjs'
import { browser__base__relement } from 'relementjs/browser'
import { a_, div_ } from 'relementjs/html'
relement__use(browser__base__relement)
// import { server__base__relement } from 'relementjs/server'
// relement__use(server__base__relement)
div_(
a_({ href: 'https://github.com/relementjs/relementjs' },
'relementjs github page'))browser rendering
import { tags } from 'relementjs/browser'
const { a, div } = tags
div(
a({ href: 'https://github.com/relementjs/relementjs' },
'relementjs github page'))server rendering
import { tags } from 'relementjs/server'
const { a, div } = tags
div(
a({ href: 'https://github.com/relementjs/relementjs' },
'relementjs github page'))