package tyxml
Install
dune-project
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 tyxmlTo install the PPX:
opam install tyxml-ppxTo install the JSX:
opam install tyxml-jsx
Dev Dependencies (1)
-
alcotest
with-test
Used by (33)
- ansi
- ansi-parse
- benchpress-server
- biotk
- bistro
- bistro-bio
- builder-web
- caldav
- current_ansi
-
current_github
< "0.7.1" -
current_web
< "0.7.1" -
eliom
>= "6.11.0" & < "10.4.0" - janestreet_csv
-
js_of_ocaml-tyxml
< "5.7.1" - junit
- markdown
- mastodon-archive-viewer
-
memtrace_viewer
< "v0.15.0" - netkat
-
ocsigen-i18n
< "4.0.0" -
ocsigenserver
< "3.0.0" - odoc
- opam-graph
-
opium
>= "0.19.0" - plotkicadsch
- 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
Conflicts
None