Skip to content

Releases: davesnx/html_of_jsx

0.0.7

08 Dec 08:40
ac435d2

Choose a tag to compare

CHANGES:

  • Static HTML optimization: elements with static content are now pre-rendered at compile time for ~10x faster rendering (@davesnx)
  • Add -disable-static-opt flag to disable static HTML optimization (use JSX.node for all elements) (@davesnx)
  • [BREAKING] Remove JSX.Debug module (the opaque JSX.element type is no longer inspectable) (@davesnx)

0.0.6

14 Oct 23:31
0d29b55

Choose a tag to compare

CHANGES:

0.0.5

04 Aug 19:07
f755078

Choose a tag to compare

0.0.4

26 Jun 10:28
b6c86c9

Choose a tag to compare

  • [BREAKING] Handle HTML encoding for ' (@davesnx)
  • Handle HTML encoding for " (from " 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

07 Jun 10:03
773029d

Choose a tag to compare

  • [BREAKING] Html_of_jsx.render lives under JSX.render (removing the Html_of_jsx module entirely)
  • [BREAKING] Module Jsx is turned into JSX
  • [BREAKING] dune's library is now html_of_jsx instead of (html_of_jsx.lib)
  • [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)
  • Improved performance of JSX.render

0.0.2

26 Apr 16:03
01b3eab

Choose a tag to compare

  • 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

10 Feb 15:57
f0556ed

Choose a tag to compare

  • First working version of the ppx and library
  • Supports most of features from 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)
  • 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 and mlx
  • Supports some htmx under the ppx (html_of_jsx.ppx -htmx)