- Notifications
You must be signed in to change notification settings - Fork19
js_of_ocaml bindings for ReactJS. Based on ReasonReact.
License
ml-in-barcelona/jsoo-react
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Bindings toReact forjs_of_ocaml, including JSX ppx.
Adapted fromReasonReact.
jsoo-react allows to use React from OCaml, but it is still at theexperimental phase: there is no published version inopam yet, and the library is expected to break backwards compatibility often.
Bug reports and contributions are welcome!
For new projects, the best way to start is by usingthe jsoo-react template.
Install the
jsoo-reactpackage:opam pin add -y jsoo-react https://github.com/ml-in-barcelona/jsoo-react.git
Add
jsoo-reactlibrary and ppx todune file of your executable JavaScript app:(executables(names index)(modes js)(libraries jsoo-react.lib)(preprocess (pps jsoo-react.ppx)))Provision React.js library
jsoo-reactusesrequireto import React and ReactDOM. This means that you will likely need to use a bundler such as Webpack or rollup.js.Note that at this moment,
jsoo-reactis compatible withReact 16, so be sure to have the appropriate constraints in yourpackage.json.
Take a look at ourContributing Guide.
Thanks to the authors and maintainers of ReasonReact, in particular@rickyvetter for his work on the v3 of the JSX ppx.
Thanks to the authors and maintainers of Js_of_ocaml, in particular@hhugo who has been answering many many questions in GitHub threads.
Thanks to the Lexifi team for creating and maintaininggen_js_api.
Thanks to@tmattio for creating Spin and the jsoo-react template 🙌
And thanks to the team behind React.js! What an amazing library :)
About
js_of_ocaml bindings for ReactJS. Based on ReasonReact.
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors11
Uh oh!
There was an error while loading.Please reload this page.