package html_of_jsx
Render HTML with JSX
Install
Dune Dependency
Authors
Maintainers
Sources
html_of_jsx-0.0.3.tbz
sha256=c9427679a424a5c4fa5b0547c01af15bc00960df838858c4eb3124acdca301cb
sha512=354f8168d2ab9c7e3b4821dfe01c430be80d9610e764c96259f5edfc52d47fe2e3abbc6600a1d423df8e5d4b4b4ae09637050fa430f12623a5ff07c15b8c1461
doc/index.html
html_of_jsx
Render HTML with JSX
html_of_jsx is a JSX transformation to write HTML declaratively in , Reason and mlx. This library was extracted from server-reason-react and later simplified to work only with HTML5.
Installation
opan install html_of_jsx
Add it to your `dune` file
(libraries html_of_jsx)
(preprocess (pps html_of_jsx.ppx))
API
The only module exposed is JSX
with some functions to construct elements and JSX.render
to transform those elements into a string.
Overview
- Brings the component model to HTML
- Supports most of the JSX features (uppercase components, fragments, optional attributes, punning, childrens, etc...)
- but with a few improvements (lowercase components, no need to add annotations)
- Integrates well with Htmx (see the
htmx
page) - No React idioms (no
className
, nohtmlFor
, noonChange
, etc...), just plain HTML5 - Type-safe, validates attributes and their types
- Works with , Reason and mlx - Created to work on the server-side, but can be used on the client-side too (with Melange) See the page for all details
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page