* [Caml-list] [ANN] Brr 0.0.1, a toolkit for programming browsers
@ 2020-10-14 12:23 Daniel Bünzli
0 siblings, 0 replies; only message in thread
From: Daniel Bünzli @ 2020-10-14 12:23 UTC (permalink / raw)
I'd like to announce the first release of Brr.
The TL; DR is: if you are looking for a productive way to program browsers
with js_of_ocaml but without ppx and ghost OCaml objects, give Brr a try.
Brr is a toolkit for programming browsers in OCaml with the
[`js_of_ocaml`][jsoo] compiler. It provides:
* Interfaces to a selection of browser APIs.
* Note based reactive support (optional and experimental).
* An OCaml console developer tool for live interaction
with programs running in web pages.
Brr is distributed under the ISC license. It depends on [Note][note]
and on the `js_of_ocaml` compiler and runtime – but not on its
libraries or syntax extension.
API Docs & manuals: https://erratique.ch/software/brr/doc/ or `odig doc brr`
Browser API coverage: https://erratique.ch/software/brr/doc/index.html#supported_apis
Install: opam install brr
Brr is essentially what I need to be productive for browser programming with
types without OCaml object phantom types and binding documentation
precisely linking into MDN.
The OCaml console is the hack on the cake. In the past I often found it frustrating to
prompt in the browser dev tools. Quite a bit of polishing could be done on that
though. Some of which should likely directly be done upstream in the toplevel
machinery (e.g. identifier completion, a better toploop API and support for easy pretty
printer installation). It would also be nice if we could cut down on `js_of_ocaml`'s
toplevel compilation times ;-)
Parts of Brr have been seriously dogfooded in the past but that new incarnation is
largely untested for now and certain APIs might need adjustements. Early
adopters should study actual binding coverage and expect glitches or little breakages
in the future.
The Note reactive functionality was also seriously used in the past but Note itself needs
a new design round and I don't have the ressources to do it right now, expect breakage,
don't pay too much attention to it for now.
special shootout to Hugo Heuzard for not getting mad at me when pinging him directly
Happy browser compatibility bug hunting,
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-10-14 12:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-14 12:23 [Caml-list] [ANN] Brr 0.0.1, a toolkit for programming browsers Daniel Bünzli
caml-list - the Caml user's mailing list
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://inbox.vuxu.org/caml-list
git clone --mirror https://inbox.ocaml.org/caml-list
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V1 caml-list caml-list/ http://inbox.vuxu.org/caml-list \
Example config snippet for mirrors.
Newsgroup available over NNTP:
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git