package tyxml
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=516394dd4a5c31726997c51d66aa31cacb91e3c46d4e16c7699130e204042530
sha512=d5f2187f8410524cec7a14b28e8950837070eb0b6571b015dd06076c2841eb7ccaffa86d5d2307eaf1950ee62f9fb926477dac01c870d9c1a2f525853cb44d0c
Description
TyXML provides a set of convenient combinators that uses the OCaml
type system to ensure the validity of the generated documents. TyXML
can be used with any representation of HTML and SVG: the textual one,
provided directly by this package, or DOM trees (js_of_ocaml-tyxml
)
virtual DOM (virtual-dom
) and reactive or replicated trees
(eliom
). You can also create your own representation and use it to
instantiate a new set of combinators.
open Tyxml
let to_ocaml = Html.(a ~a:[a_href "ocaml.org"] [txt "OCaml!"])
Published: 09 Mar 2020
README
TyXML
TyXML is a library for building statically correct HTML5 and SVG documents:
open Tyxml
let to_ocaml = Html.(a ~a:[a_href "ocaml.org"] [txt "OCaml!"])
Tyxml can also be used with the standard HTML syntax, using the PPX:
open Tyxml
let%html to_ocaml = "<a href='ocaml.org'>OCaml!</a>"
Finally, TyXML can be used with Reason's JSX syntax:
open Tyxml;
let to_reason = <a href="reasonml.github.io/"> "Reason!" </a>
TyXML provides a set of combinators which use the OCaml type system to ensure the validity of the generated document. TyXML can be used on a wide variety of context, either to produce textual documents, to manipulate the DOM tree using Js_of_ocaml, build virtual DOM with [virtual-dom][], or for tierless web programming with Eliom.
The documentation can be consulted on the TyXML website. Examples are available in the examples directory.
Installation
TyXML is available in OPAM:
opam install tyxml
To install the PPX:
opam install tyxml-ppx
To install the JSX:
opam install tyxml-jsx
Dev Dependencies (1)
-
alcotest
with-test
Used by (37)
- ansi
- ansi-parse
- benchpress-server
- biotk
-
bistro
>= "0.2.0"
- bistro-bio
- builder-web
- caldav
- current_ansi
-
current_github
>= "0.4" & < "0.6.6"
-
current_web
< "0.6.6"
-
datakit-ci
!= "0.12.0"
- doc-ock-html
-
eliom
>= "6.11.0" & < "10.4.0"
- janestreet_csv
-
js_of_ocaml-tyxml
>= "3.3.0" & < "5.7.1"
- junit
-
ketrew
>= "3.0.0"
- markdown
- mastodon-archive-viewer
-
memtrace_viewer
< "v0.15.0"
- netkat
-
ocsigen-i18n
>= "3.3.0" & < "4.0.0"
-
ocsigenserver
>= "2.10" & < "3.0.0"
- odoc
- opam-graph
-
opium
>= "0.19.0"
- plotkicadsch
-
podge
>= "0.8.0"
- printbox-ext-plot
- printbox-html
-
sihl
< "0.2.0"
-
tree_layout
>= "0.2"
-
tyxml-jsx
< "4.5.0"
-
tyxml-lwd
< "0.2"
-
tyxml-ppx
= "4.4.0"
-
virtual_dom
>= "v0.12.0"
Conflicts
None