package html_of_jsx

  1. Overview
  2. Docs
Render HTML with JSX

Install

dune-project
 Dependency

Authors

Maintainers

Sources

html_of_jsx-0.0.5.tbz
sha256=53406f788909fdab597fe4b627a87b61543417e0bc1133a000629e12be444062
sha512=e2be5fa788c450b6ccbfef9390625b6abc26616b03fa111e3549f4d28a6410f2f8f27c63c91f6f93d5c1b00908480ed286d0bfe28c2c9d58d0cf829a8df66163

doc/CHANGES.html

Changes

0.0.5

  • Make tests run in FreeBSD (https://github.com/davesnx/html_of_jsx/issues/22) (@davesnx)
  • Fix: prefix with Stdlib all ppx generated code (https://github.com/davesnx/html_of_jsx/pull/23) (@tjdevries)
  • Allow react attributes as props (via -react flag) (https://github.com/davesnx/html_of_jsx/pull#26) (@davesnx)
  • Documentation: pushed old "features" document into the main index as seen https://davesnx.github.io/html_of_jsx/html_of_jsx/index.html

0.0.4

  • [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

  • [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 #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 (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)
OCaml

Innovation. Community. Security.