Site under construction. Please use http://ocsigen.org for now.

Multi-tier programming for Web and mobile apps

Android, iOS, Server & client in one piece of code

Powerful type-checking with OCaml/Reason

Your first app in 5 minutes ...

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

Multi-platform

1 langage
1 code

Client & Server

Web, Android, iOS

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!

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(b){"use strict";var
a=b.jsoo_runtime;a.caml_register_global(0,[0,
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
}}],"Fib");return}(function(){return this}()));

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.

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.