this repo has no description

[new release] html_of_jsx (0.0.4)

CHANGES:

## 0.0.4

- [BREAKING] Handle HTML encoding for `'` (@davesnx)
- Handle HTML encoding for `"` (from `&davesnx/html_of_jsx#34;` to `"`) (@davesnx)
- Improved performance of `JSX.render` (@davesnx)
- [BREAKING] Remove `Fragment` in favor of `JSX.list` (@davesnx)
- Remove unused `Component (unit -> element)` since it isn't needed (@davesnx)
- [BREAKING] Change attributes representation (@andreypopp)
- [BREAKING] Remove melange dependency (@andreypopp)
- [BREAKING] Lower the OCaml bound to 4.14 (@davesnx)
- Make lib wrapped (@andreypopp)

## 0.0.3

- [BREAKING] `Html_of_jsx.render` lives under `JSX.render` (removing the `Html_of_jsx` module entirely) (@lessp)
- [BREAKING] Module `Jsx` is turned into `JSX` (@lessp)
- [BREAKING] dune's library is now `html_of_jsx` instead of (`html_of_jsx.lib`) (@lessp)
- [BREAKING] `JSX.element` is opaque (can't see the type from outside), but we have a `JSX.Debug` module to inspect and re-construct `JSX.element` (cc @leostera) (@lessp)
- Improved performance of `JSX.render` (@lessp)
- add `hx-trigger` to htmx ppx davesnx/html_of_jsx#13 (@lessp)
- `htmlFor` -> `for_` (@lessp)
- Fix aria-autocomplete (@davesnx)

## 0.0.2

- Add `Jsx.unsafe` to allow unsafe HTML as children
- Fix HTML attributes formatting (charset, autocomplete, tabindex, inputmode, etc...)
- Enable HTMX attributes via `html_of_jsx.ppx -htmx`

## 0.0.1

- First working version of the ppx and library
- Supports most of features from [JSX](https://reasonml.github.io/docs/en/jsx) (uppercase components, fragments, optional attributes, punning)
- but with a few improvements (lowercase components, no need to add annotations)
- No React idioms (no `className`, no `htmlFor`, no `onChange`, etc...)
- Type-safe, validates attributes and their types ([it can be better thought](https://github.com/davesnx/html_of_jsx/issues/2))
- Minimal
- `Html_of_jsx.render` to render an element to HTML
- `Jsx.*` to construct DOM Elements and DOM nodes (`Jsx.text`, `Jsx.int`, `Jsx.null`, `Jsx.list`)
- Works with [Reason](https://reasonml.github.io) and [mlx](https://github.com/andreypopp/mlx)
- Supports some htmx under the ppx (`html_of_jsx.ppx -htmx`)

Changed files
+45
packages
html_of_jsx
html_of_jsx.0.0.4
+45
packages/html_of_jsx/html_of_jsx.0.0.4/opam
···
+
opam-version: "2.0"
+
synopsis: "Render HTML with JSX"
+
description:
+
"html_of_jsx is a JSX transformation that allows you to write HTML declaratively."
+
maintainer: ["David Sancho <dsnxmoreno@gmail.com>"]
+
authors: ["David Sancho <dsnxmoreno@gmail.com>"]
+
license: "MIT"
+
homepage: "https://github.com/davesnx/html_of_jsx"
+
bug-reports: "https://github.com/davesnx/html_of_jsx/issues"
+
depends: [
+
"dune" {>= "3.12"}
+
"ocaml" {>= "4.14"}
+
"ppxlib" {> "0.23.0"}
+
"alcotest" {with-test}
+
"benchmark" {with-test}
+
"reason" {>= "3.10.0" & with-test}
+
"odoc" {with-doc}
+
"ocamlformat" {= "0.26.1" & (with-dev-setup | with-test)}
+
"ocaml-lsp-server" {with-dev-setup}
+
"tiny_httpd" {with-dev-setup}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
]
+
dev-repo: "git+https://github.com/davesnx/html_of_jsx.git"
+
url {
+
src:
+
"https://github.com/davesnx/html_of_jsx/releases/download/0.0.4/html_of_jsx-0.0.4.tbz"
+
checksum: [
+
"sha256=12c49cb44a7476921d097248540e222cb412cf49a283cc20b92775e2bf2b9c39"
+
"sha512=96748d99db49817a900ce2b310d5f496cee5e96ba1c90611d204c397549e55797eb76f0952912bcfd5be17e06cf5029fb85b19417ea47ba4543103eb0536ab55"
+
]
+
}
+
x-commit-hash: "b6c86c9248d19a7eae80a3f55019ea38bd0c7384"