package server-reason-react
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
server-reason-react
This is the documentation and API for server-reason-react, an implementation of react, react-dom and react-dom/server to run on the server with Reason/OCaml, with the purpose to Server-side render HTML markup from a reason-react application natively (for both SSR and SSG).
Why
Explained more about the motivation in this blog post sancho.dev/blog/server-side-rendering-react-in-ocaml and also in my talk about Server side rendering React natively with Reason at ReactAlicante 2023.
Guides
- Get started
- How universal code works
- How to structure the code
- Exclude client code from the native build
- Externals and melange attributes
Core API
Those are the core libraries of server-reason-react.
ReactThe React libraryreactDom
Other libraries
Aside from the core, server-reason-react exposes some needed known libraries from melange or melange-community to help make components universal:
Beltserver-reason-react.belt(equivalent toBeltfrommelange)Jsserver-reason-react.js(equivalent toJsfrommelange, very unsafe)URLserver-reason-react.urlWebapiserver-reason-react.webapi(equivalent toWebapifrommelange-webapi)
This would eventually be extracted into their own packages
Next
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page