Warning: Reason support is experimental. We are looking for beta-tester and contributors.

Module Eliom_shared

module Eliom_shared : sig..end

This module implements shared (i.e., client-server) versions of the React and ReactiveData libraries.

On the server side, the reactive signals and data structures are comprised of a server-side version and a client-side version. The server-side signals (and data structures) are evaluated only once.

All operations on signals and data need to be provided in the form of shared functions, i.e., functions that have both a client-side and a server-side implementation.


val to_signal : 
  init:'a ->
  ?eq:('a -> 'a -> bool) -> 'a React.S.t Lwt.t -> 'a React.S.t

to_signal ~init s converts the Lwt-wrapped signal s into a regular signal with initial value init.

module Value : Eliom_shared_sigs.VALUE

Accessing shared values

module React : sig..end

Shared implementation of React

module FakeReactiveData : sig..end

This is a dummy ReactiveData module that allows us to refer to client-side ReactiveData types on the server side, without actually linking against ReactiveData.

module ReactiveData : sig..end

Shared implementation of ReactiveData