Below is the API for the OCaml standard library. It's directly copied over from the OCaml Manual, formatted to the Reason syntax and styled accordingly. The API docs are work-in-progress; we'll be polishing these gradually!
If you're targeting JavaScript, the API docs for BuckleScript includes all of below, plus JS-specific APIs.
sig val open_box : int -> unit val close_box : unit -> unit val print_string : string -> unit val print_as : int -> string -> unit val print_int : int -> unit val print_float : float -> unit val print_char : char -> unit val print_bool : bool -> unit val print_space : unit -> unit val print_cut : unit -> unit val print_break : int -> int -> unit val print_flush : unit -> unit val print_newline : unit -> unit val force_newline : unit -> unit val print_if_newline : unit -> unit val set_margin : int -> unit val get_margin : unit -> int val set_max_indent : int -> unit val get_max_indent : unit -> int val set_max_boxes : int -> unit val get_max_boxes : unit -> int val over_max_boxes : unit -> bool val open_hbox : unit -> unit val open_vbox : int -> unit val open_hvbox : int -> unit val open_hovbox : int -> unit val open_tbox : unit -> unit val close_tbox : unit -> unit val print_tbreak : int -> int -> unit val set_tab : unit -> unit val print_tab : unit -> unit val set_ellipsis_text : string -> unit val get_ellipsis_text : unit -> string type tag = string val open_tag : Format.tag -> unit val close_tag : unit -> unit val set_tags : bool -> unit val set_print_tags : bool -> unit val set_mark_tags : bool -> unit val get_print_tags : unit -> bool val get_mark_tags : unit -> bool val set_formatter_out_channel : Pervasives.out_channel -> unit val set_formatter_output_functions : (string -> int -> int -> unit) -> (unit -> unit) -> unit val get_formatter_output_functions : unit -> (string -> int -> int -> unit) * (unit -> unit) type formatter_out_functions = { out_string : string -> int -> int -> unit; out_flush : unit -> unit; out_newline : unit -> unit; out_spaces : int -> unit; } val set_formatter_out_functions : Format.formatter_out_functions -> unit val get_formatter_out_functions : unit -> Format.formatter_out_functions type formatter_tag_functions = { mark_open_tag : Format.tag -> string; mark_close_tag : Format.tag -> string; print_open_tag : Format.tag -> unit; print_close_tag : Format.tag -> unit; } val set_formatter_tag_functions : Format.formatter_tag_functions -> unit val get_formatter_tag_functions : unit -> Format.formatter_tag_functions type formatter val formatter_of_out_channel : Pervasives.out_channel -> Format.formatter val std_formatter : Format.formatter val err_formatter : Format.formatter val formatter_of_buffer : Buffer.t -> Format.formatter val stdbuf : Buffer.t val str_formatter : Format.formatter val flush_str_formatter : unit -> string val make_formatter : (string -> int -> int -> unit) -> (unit -> unit) -> Format.formatter val pp_open_hbox : Format.formatter -> unit -> unit val pp_open_vbox : Format.formatter -> int -> unit val pp_open_hvbox : Format.formatter -> int -> unit val pp_open_hovbox : Format.formatter -> int -> unit val pp_open_box : Format.formatter -> int -> unit val pp_close_box : Format.formatter -> unit -> unit val pp_open_tag : Format.formatter -> string -> unit val pp_close_tag : Format.formatter -> unit -> unit val pp_print_string : Format.formatter -> string -> unit val pp_print_as : Format.formatter -> int -> string -> unit val pp_print_int : Format.formatter -> int -> unit val pp_print_float : Format.formatter -> float -> unit val pp_print_char : Format.formatter -> char -> unit val pp_print_bool : Format.formatter -> bool -> unit val pp_print_break : Format.formatter -> int -> int -> unit val pp_print_cut : Format.formatter -> unit -> unit val pp_print_space : Format.formatter -> unit -> unit val pp_force_newline : Format.formatter -> unit -> unit val pp_print_flush : Format.formatter -> unit -> unit val pp_print_newline : Format.formatter -> unit -> unit val pp_print_if_newline : Format.formatter -> unit -> unit val pp_open_tbox : Format.formatter -> unit -> unit val pp_close_tbox : Format.formatter -> unit -> unit val pp_print_tbreak : Format.formatter -> int -> int -> unit val pp_set_tab : Format.formatter -> unit -> unit val pp_print_tab : Format.formatter -> unit -> unit val pp_set_tags : Format.formatter -> bool -> unit val pp_set_print_tags : Format.formatter -> bool -> unit val pp_set_mark_tags : Format.formatter -> bool -> unit val pp_get_print_tags : Format.formatter -> unit -> bool val pp_get_mark_tags : Format.formatter -> unit -> bool val pp_set_margin : Format.formatter -> int -> unit val pp_get_margin : Format.formatter -> unit -> int val pp_set_max_indent : Format.formatter -> int -> unit val pp_get_max_indent : Format.formatter -> unit -> int val pp_set_max_boxes : Format.formatter -> int -> unit val pp_get_max_boxes : Format.formatter -> unit -> int val pp_over_max_boxes : Format.formatter -> unit -> bool val pp_set_ellipsis_text : Format.formatter -> string -> unit val pp_get_ellipsis_text : Format.formatter -> unit -> string val pp_set_formatter_out_channel : Format.formatter -> Pervasives.out_channel -> unit val pp_set_formatter_output_functions : Format.formatter -> (string -> int -> int -> unit) -> (unit -> unit) -> unit val pp_get_formatter_output_functions : Format.formatter -> unit -> (string -> int -> int -> unit) * (unit -> unit) val pp_set_formatter_tag_functions : Format.formatter -> Format.formatter_tag_functions -> unit val pp_get_formatter_tag_functions : Format.formatter -> unit -> Format.formatter_tag_functions val pp_set_formatter_out_functions : Format.formatter -> Format.formatter_out_functions -> unit val pp_get_formatter_out_functions : Format.formatter -> unit -> Format.formatter_out_functions val pp_print_list : ?pp_sep:(Format.formatter -> unit -> unit) -> (Format.formatter -> 'a -> unit) -> Format.formatter -> 'a list -> unit val pp_print_text : Format.formatter -> string -> unit val fprintf : Format.formatter -> ('a, Format.formatter, unit) Pervasives.format -> 'a val printf : ('a, Format.formatter, unit) Pervasives.format -> 'a val eprintf : ('a, Format.formatter, unit) Pervasives.format -> 'a val sprintf : ('a, unit, string) Pervasives.format -> 'a val asprintf : ('a, Format.formatter, unit, string) Pervasives.format4 -> 'a val ifprintf : Format.formatter -> ('a, Format.formatter, unit) Pervasives.format -> 'a val kfprintf : (Format.formatter -> 'a) -> Format.formatter -> ('b, Format.formatter, unit, 'a) Pervasives.format4 -> 'b val ikfprintf : (Format.formatter -> 'a) -> Format.formatter -> ('b, Format.formatter, unit, 'a) Pervasives.format4 -> 'b val ksprintf : (string -> 'a) -> ('b, unit, string, 'a) Pervasives.format4 -> 'b val bprintf : Buffer.t -> ('a, Format.formatter, unit) Pervasives.format -> 'a val kprintf : (string -> 'a) -> ('b, unit, string, 'a) Pervasives.format4 -> 'b val set_all_formatter_output_functions : out:(string -> int -> int -> unit) -> flush:(unit -> unit) -> newline:(unit -> unit) -> spaces:(int -> unit) -> unit val get_all_formatter_output_functions : unit -> (string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) * (int -> unit) val pp_set_all_formatter_output_functions : Format.formatter -> out:(string -> int -> int -> unit) -> flush:(unit -> unit) -> newline:(unit -> unit) -> spaces:(int -> unit) -> unit val pp_get_all_formatter_output_functions : Format.formatter -> unit -> (string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) * (int -> unit) end