Multi-tier programming for Web and mobile apps

Android, iOS, Web (Server & client) with the same code

Full-stack modular Web framework for OCaml/Reason with advanced type-checking

Get started now!

Events

2024-09-16

Come and learn Ocsigen at FUN OCaml in Berlin!

slides

Eliom

Multi-tier language for multi-platform apps

Eliom extends OCaml/Reason into a multi-tier language making it possible to write your whole application (client and server parts) as a single program!

It can run as a Web app, or as a mobile app (based on Web technologies).

Multi-tier

Js_of_ocaml

Optimizing compiler for OCaml/Reason to Javascript

Js_of_ocaml translates your OCaml or Reason programs to Javascript. You can choose between readable or optimized JavaScript.

Js_of_ocaml operates from compiled OCaml bytecode programs. You don't even need the source code, and you don't need to recompile all the OCaml libraries you use.

Easy interfacing with Javascript libraries.

let fib num =
  let rec aux num prec2 prec =
    if num = 0
    then prec
    else
      aux (num - 1) prec (prec + prec2)
  in aux num 1 1
function fib(num)
 {var num$0=num,prec2=1,prec=1;
  for(;;)
   {if(0 === num$0)return prec;
    var
     prec$0=prec + prec2 | 0,
     num$1=num$0 - 1 | 0,
     num$0=num$1,
     prec2=prec,
     prec=prec$0;
     continue}}
function(d){var b=d,c=1,a=1;for(;;){if(0===b)return a;var b=b-1|0,e=a+c|0,c=a,a=e;continue}};

Main projects

Js_of_ocaml

Optimizing compiler from OCaml/Reason to Javascript.

Eliom

Multi-tier language and framework for multi-platform apps.

Server

Full-featured and extensible Web Server.

Lwt

Cooperative threading library.

Ocsipersist

Persistent data for OCaml.

Tyxml

Static type-checking for HTML and SVG.

Ocsigen Toolkit

Native OCaml widgets for browsers (client side only or client-server).

Start

A full-featured app to use as code example for your own projects.